我有以下带有onchange事件的select元素。
<select name="ftest" onchange="alert('test');">
<option value="0"></option>
<option value="test">test</option>
</select>
我稍后使用jQuery(1.4.4)在页面中的所有select元素上绑定另一个事件。
$("SELECT").change(function(){
_isDirty = true;
});
当我更改选择列表的值时,结果是我的警报显示两次。
任何人都知道为什么会发生这种情况或有办法解决这个问题?
由于
答案 0 :(得分:1)
这是一个known bug with IE and jQuery,因为他们在IE中模拟change
的冒泡。不幸的是,除了删除内联onchange
处理程序之外,目前还没有一个干净的解决方法。
答案 1 :(得分:0)
我相信,jQuery会添加处理程序,而不是替换它们。因此,对于上面的内容,您将在SELECT元素中获取一个onchange属性,并为jQuery添加另一个属性。