代码之家  ›  专栏  ›  技术社区  ›  Victor

jquery live事件执行两次

  •  13
  • Victor  · 技术社区  · 14 年前

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

    4 回复  |  直到 10 年前
        1
  •  32
  •   Tim Cooper    13 年前

    我想你在打电话 .live() 一次又一次地在同一个元素上。 使用 .die() 在调用之前 LIVER() .

        2
  •  22
  •   Marian Zburlea    12 年前

    我是这样修好的:

    $('selector').die('click').live('click', function () {
      // Do stuff here
    });
    
        3
  •  2
  •   seth yount    11 年前

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

    决赛:

    $(".clickedClass").die("click").live("click", function () {
    
    });
    
        4
  •  0
  •   Purvesh    10 年前

    如果你用的是on方法而不是live。然后

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