Javascript IE-如果选择框有特定的类,则阻止其聚焦(单击,双击)

Javascript IE-如果选择框有特定的类,则阻止其聚焦(单击,双击),javascript,jquery,internet-explorer,Javascript,Jquery,Internet Explorer,我正在使用javascript模拟禁用的select元素。由于.net验证程序失败,我实际上无法禁用它,但这是另一回事 我有以下功能: function preventFocus(e) { if ($(this).hasClass("disabled")) { e.preventDefault(); this.blur(); } } 这里称之为: $("#ProvinceID").toggleClass("disabled").bind('focus click dbl

我正在使用javascript模拟禁用的select元素。由于.net验证程序失败,我实际上无法禁用它,但这是另一回事

我有以下功能:

function preventFocus(e) {
  if ($(this).hasClass("disabled")) {
    e.preventDefault();
    this.blur();
  }
}
这里称之为:

$("#ProvinceID").toggleClass("disabled").bind('focus click dblclick', preventFocus);
双击IE中的选择框似乎仍然允许显示和选择项目。我尝试了IE开发者工具栏,e.type显示为focus和dblclick。这是一个IE错误,还是我需要捕捉其他事件?我也试过聚焦


谢谢

我不知道这是否只是一个输入错误,但你应该使用e.preventDefault();看起来你好像漏掉了括号。

这已经晚了4年,但我刚刚发现事实上有一种方法可以得到IE≤ 8要执行
e.preventDefault()
on
mousedown
在其他浏览器中所做的操作(防止选择防止聚焦):设置
不可选择的
属性

请注意,与通常建议的解决方法不同,它总是归结为
setTimeout(function(){thingiditwantFocussTolenfrom.focus();})
,这从一开始就可以防止焦点被
mousedown
目标窃取

unselectable
的有趣之处在于它不是继承的,所以它经常被忽略,而偏向于
selectstart
事件(它冒泡,而
e.preventDefault()
阻止选择,但不阻止焦点),或者通过树遍历在每个子元素上设置(如,或Tim Down),但实际上您可以将其设置为
event.target
on
mousedown


(还有,jqueryticket:)

输入错误,是;回答,不是。不过谢谢。