jquery live事件被执行两次

时间:2010-04-13 09:58:08

标签: jquery

我正在将内容加载到带有ajax的页面中,该页面将附加实时点击事件。这似乎是我第一次加载这些内容时,一切都按预期工作。如果我再次加载它,事件将触发两次(在代码中放置断点)。我究竟做错了什么?有没有办法在再次加载之前清除这些元素的dom?

4 个答案:

答案 0 :(得分:32)

我猜你一次又一次地在同一个元素上调用.live()。 在调用.die()之前对这些元素使用.live()

答案 1 :(得分:22)

我这样修好了:

$('selector').die('click').live('click', function () {
  // Do stuff here
});

答案 2 :(得分:2)

刚刚确认。正在使用.live()并首先尝试使用.unbind()。

最后:

$(".clickedClass").die("click").live("click", function () {

});

答案 3 :(得分:0)

如果您使用ON方法而不是实时方法。 THEN

jQuery('body')。unbind()。on('submit','form.make_commitment_form',function(e){....});