选择onchange在ie7发射两次
问题描述:
这真的很奇怪,不知道为什么会发生这种情况,但我的onchange正在发射两次。任何帮助/想法是极大的赞赏...选择onchange在ie7发射两次
<select id="ddlGender" onchange="myfunc()">
<option value="1">-select-</option>
<option value="2">Male</option>
<option value="3">Female</option>
<option value="4">NotSpecified</option>
</select>
答
您的Java脚本代码应该是在你的头上加载Java脚本文件:
$(document).ready(function(){
$("#ddlGender").unbind('click').change(myfunc);
var myfunc = function (e)
{
// Do something important....
}
});
如果我没有记错,你需要从解除绑定click事件在IE中选择以避免两次触发事件。
而且你的HTML不应该有任何电平变化多:
<select id="ddlGender">
<option value="1">-select-</option>
<option value="2">Male</option>
<option value="3">Female</option>
<option value="4">NotSpecified</option>
</select>
+0
这并不是真的解决了这个问题,而只是提示如何重构代码。为了简单起见,我假设问题中给出的示例使用内联JavaScript。 – 2011-04-29 21:14:16
+0
如果你仔细观察,在改变之前有一个解除绑定('点击'),实际上应该解决这个特定的问题。 – Krule 2011-04-29 21:17:34
我们能看到MYFUNC代码()? – slandau 2011-04-29 20:51:17
你可以发布myfunc的内容吗?也许你正在更改myfunc中ddlGender的选定索引,并以这种方式触发另一个onchange? – Zyphrax 2011-04-29 20:52:40
其他事情是否用jQuery以编程方式触发更改事件?在这种情况下,有一个jQuery错误会导致这种行为;让我去搜索bug数据库。 – Pointy 2011-04-29 20:53:47