所以,我有以下js:
function SOME_FUNCTION()
{
jQuery('.done').unbind('click').click(function(e) {
// jQuery(document).on( 'click', '.done', function(e) {
...
success : function(data){
alert('done');
return false;
}
});
}
// e.stopPropagation();
});
}
因此,“class="done"
”通过ajax(新内容)加载,看起来多次添加处理程序。我试过“unbind”,“off”等,但我仍然收到多个警报('完成');
我做错了什么?有没有办法简单地删除这个类的所有处理程序?或者只在点击时添加处理程序?
修改
只要单击“.button”,就会调用SOME_FUNCTION
函数。
function BUTTON_FUNCTION()
{
// jQuery('.button').unbind('click').click(function(e) {
jQuery(document).on( 'click', '.button', function(e) {
...
success: function(data){
SOME_FUNCTION();
},
});
}
答案 0 :(得分:1)
删除函数只需在文档就绪函数中直接调用它:
jQuery(document).on( 'click', '.done', function(e) {
...
success : function(data){
alert('done');
return false;
}
});
}
});
动态添加或不添加类.done
的所有元素只有一个单击事件将其绑定到它