禁用文本框的上下文菜单

时间:2013-05-29 10:56:25

标签: javascript asp.net contextmenu

我有一个自定义文本框控件,扩展了TextBox APS.NET类。它被构建为在右键单击时打开日历。到目前为止一切顺利,但在Firefox中,默认的上下文菜单会打开我的日历控件,如下所示:

here http://img4.imageshack.us/img4/2622/20130529135817.png。我想知道如何禁用此Firefox内容菜单并防止它出现。

我已尝试在JavaScript document.oncontextmenu = function(){return false;}中进行设置,但这将禁用我页面上的所有上下文菜单。我在此控件中打开日历的代码是:

if (isDate) // check if it's a date textbox where the calendar should be displayed on right click
{
   this.Attributes.Add("oncontextmenu", "javascript:ShowCalendar(this);");
 }

我认为我需要在某处设置它以防止其他上下文菜单打开,但我不确定如何。任何建议都非常感激。

1 个答案:

答案 0 :(得分:0)

找到解决方案。我应该调用event.stop()来防止上下文菜单出现在我的日历上。

this.Attributes.Add("oncontextmenu", "javascript:if(event.stop) {event.stop();} ShowCalendar(this);");

非常感谢!