我用按钮绑定click事件:$('#myButton').bind('click', onButtonClicked);在一种情况下,这会被多次调用,所以当我执行一次操作时,trigger我看到了多个我想防止的ajax调用。bind只有在未绑定之前,我该怎么办。
3 回答

精慕HU
TA贡献1845条经验 获得超8个赞
另一种方法-使用CSS类和过滤器标记此类按钮:
$('#myButton:not(.bound)').addClass('bound').bind('click', onButtonClicked);
在最新的jQuery版本中,替换bind为on:
$('#myButton:not(.bound)').addClass('bound').on('click', onButtonClicked);

杨__羊羊
TA贡献1943条经验 获得超7个赞
如果使用jQuery 1.7+:
您可以致电off之前on:
$('#myButton').off('click', onButtonClicked) // remove handler
.on('click', onButtonClicked); // add handler
如果不:
您可以解除绑定第一个事件:
$('#myButton').unbind('click', onButtonClicked) //remove handler
.bind('click', onButtonClicked); //add handler
- 3 回答
- 0 关注
- 428 浏览
添加回答
举报
0/150
提交
取消