我正在使用jQuery 1.2.7(我无法升级)
为了在下拉菜单选择值更改时触发事件,我被告知使用以下代码:
$('#dropdownWidget').bind($.browser.msie ? 'click' : 'change', function(event) {
//myEvent
});
这是小部件的屏幕截图:
它适用于所有浏览器,但在IE中,每次用户点击窗口小部件时都会触发事件(甚至在选择新值之前)。
由于我正在触发AJAX调用,我无法忍受这一点。感谢
答案 0 :(得分:3)
我倾向于对所有浏览器使用click事件,并使用IE获取更改事件以触发click事件。
$('#dropdownWidget').bind('click', function(event) {
//myEvent
}).bind('change', function(event) {
if ($.browser.msie) {
$(this).click();
}
});
如果change()
事件确实已经像其他人所建议的那样被修复,那么当然这是多余的。但你很可能会使用较旧的jQuery代码库。
答案 1 :(得分:1)
那为什么要为msie
添加支票?
只需尝试以下操作:
$('#dropdownWidget').bind('change', function(event) {
alert('test'); //myEvent
});