jquery触发两次onchange事件

2021-06-18 06:03

阅读:508

标签:firefox   也会   func   变量   方法   全局   settime   获取   联动   

在项目中需要给select绑定改变事件,来触发动作,但是发现改变一次select,onchange方法执行两遍

//公告类别的变更时间联动公告模板
$("#test").change(function () {
  alert(1);
})

 

后来给select 标签添加一个onchange属性也会触发两次,这个onchange时间的机制是,在获取焦点之后,储存一个select里面的值,当发现这个值改变的时候,触发onchange事件

目前仅在IE8下发现此类问题,我仅测试了IE8/Chrome25/Firefox19

网上说可以通过一个全局变量控制来拒绝,不过方法很笨,还有一种方法就是用settimeout

 

$(‘#test1‘).bind("change", function(){

$(this).unbind("change",thatFun);

//you can do something here
alert(this.value);

//rebind again
setTimeout(function(){$(that).bind("change",thatFun)},0);//why use setTimeout? sorry, I don‘t know...
});

jquery触发两次onchange事件

标签:firefox   也会   func   变量   方法   全局   settime   获取   联动   

原文地址:http://www.cnblogs.com/ZenoLiang/p/7262639.html

上一篇:前端之HTML

下一篇:JS获取当前日期时间


评论


亲,登录后才可以留言!