Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/backbone.js/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
jQuery.change()事件的奇怪问题_Jquery_Html - Fatal编程技术网

jQuery.change()事件的奇怪问题

jQuery.change()事件的奇怪问题,jquery,html,Jquery,Html,我有以下带有onchange事件的select元素 <select name="ftest" onchange="alert('test');"> <option value="0"></option> <option value="test">test</option> </select> 结果是,当我更改选择列表的值时,我的警报会显示两次 有人知道为什么会发生这种情况,或者有办法解决吗 感谢这是一个,因为他们在

我有以下带有onchange事件的select元素

<select name="ftest" onchange="alert('test');">
  <option value="0"></option>
  <option value="test">test</option>
</select>
结果是,当我更改选择列表的值时,我的警报会显示两次

有人知道为什么会发生这种情况,或者有办法解决吗


感谢

这是一个,因为他们在IE中为
change
模拟冒泡。不幸的是,除了删除内联
onchange
处理程序之外,目前没有一个干净的解决办法。

这是一个,因为他们在IE中为
change
模拟冒泡。不幸的是,除了删除内联
onchange
处理程序之外,目前还没有一个干净的解决办法。

我认为jQuery添加了处理程序,而不是替换它们。因此,对于上面的内容,您将在SELECT元素中为onchange属性获得一个,另一个用于jQuery所做的添加。

我相信,jQuery添加了处理程序,而不是替换它们。因此,对于上面的内容,您可以在SELECT元素中为onchange属性添加一个属性,另一个用于jQuery所做的添加。

不确定您在做什么,但它在Chrome、Firefox和Safari(最新版本,Mac OS X 10.6)中工作得非常好。所以我假设它与代码中的其他内容相关。可能您正在某处调用
$(某物).change()
,或者这是一个IE问题(多么令人惊讶)。您是否试图说用jQuery绑定处理程序的行为导致内联处理程序被调用两次?是的,当我用jQuery绑定处理程序时会出现问题,是的,我使用的是IE8。为什么要使用jQuery库并编写内联javascript?您再也不需要在线编写javascript了。将所有内容放入节中,而不是HTML元素的属性。文章:我知道…这是旧代码,我真的没有选择。我想我会放弃jQuery,像以前一样做这项工作。:)不知道你在做什么,但它在Chrome、Firefox和Safari(最新版本,MacOSX10.6)中运行得非常好。所以我假设它与代码中的其他内容相关。可能您正在某处调用
$(某物).change()
,或者这是一个IE问题(多么令人惊讶)。您是否试图说用jQuery绑定处理程序的行为导致内联处理程序被调用两次?是的,当我用jQuery绑定处理程序时会出现问题,是的,我使用的是IE8。为什么要使用jQuery库并编写内联javascript?您再也不需要在线编写javascript了。将所有内容放入节中,而不是HTML元素的属性。文章:我知道…这是旧代码,我真的没有选择。我想我会放弃jQuery,像以前一样做这项工作。:)
   $("SELECT").change(function(){
    _isDirty = true;
   });