无法从复选框中删除回调

时间:2015-09-04 17:24:02

标签: jquery

当用户进入我的jQuery应用程序的第5步时,代码运行:

buildStep5.find('input:checkbox').on('change', function(evt) {...

当用户返回步骤4时,我运行:

buildStep5.find('input:checkbox').empty();

我在jQuery文档中读到了remove()和empty(),但我不知道如何让它们在这种情况下工作。我得到的结果是当用户备份到步骤4然后转到步骤5时,对于每个onChange事件,复选框上的回调运行两次。如果有人可以提供帮助,我会非常感激。

2 个答案:

答案 0 :(得分:0)

我建议你回去时使用.off()

buildStep5.find('input:checkbox').off('change');

这样您就可以在第5步删除附加到change事件的事件处理程序。

答案 1 :(得分:0)

.off()方法删除了附带.on(),事件5的事件处理程序。

看看: JQuery off()