我在使用 on(); 分配了一个事件的元素解除绑定事件时遇到问题;
这是我的 JS:
$(document).on('click','.reply-indicator a', function(e){
e.preventDefault();
var commentid = $(this).data('commentid');
$.ajax({
type: 'POST',
url: '?category=getreplies',
data:{
"commentid" : commentid
},
success: function(data){
$('.'+commentid+'subcomments').append(data);
}
});
return false;
});
我已经尝试了所有我能想到的从元素中删除 click 事件的方法,我什至在每次迭代时都为每个元素分配了一个 id 属性,以便能够专门针对该元素,因为有几个:
$(document).off('click','#'+commentid+'indicator a');
$('#'+commentid+'indicator a').off();
$('#'+commentid+'indicator a').off('click');
$('#'+commentid+'indicator a').unbind('click');
但是即使我尝试将此代码放在 ajax 请求之前但事件在回调函数之后仍然有效,它也不会丢失回调函数中的事件。我是否试图正确定位它?