【问题标题】:Click on dynamically added element fires 2 click events单击动态添加的元素会触发 2 个单击事件
【发布时间】:2013-08-29 23:40:49
【问题描述】:

在我的网站上,用户可以通过单击来编辑以前添加的项目,然后 ajax 将具有不同内容的完全相同的元素(相同的 id 和类)相应地加载到“编辑部分”中。

在用户单击一个项目并尝试编辑另一个项目后,单击“编辑部分”中的元素会触发 2 个单击事件。问题是单击一个特定元素会使用 ajax 加载另一个信息,所以我得到双重结果

我已经做到了,当用户点击另一个项目后,之前的“编辑部分”将被 jQuery 函数 remove() 删除,但这并没有解决问题。

编辑:

我想我找到了问题,但我想不出好的解决方案。如果用户单击项目进行编辑,ajax 会加载 HTML 和一些 JS,这些 HTML 元素需要什么,但我不能从成功函数中删除 JS,因为 JS 不适用于项目,加载页面后加载的内容。

【问题讨论】:

  • 请分享元素创建和活动注册码
  • 你能分享你的代码和HTML吗?

标签: jquery html ajax jquery-selectors click


【解决方案1】:

分享您的代码将为我们提供更多信息。无论如何,大多数情况下您的事件会多次触发,问题是您要多次注册同一个事件。

避免这种情况的一种方法是使用“one”函数而不是“on”函数,以防万一您只需要触发一次事件。或“解除绑定”注册事件。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-12-17
    • 1970-01-01
    • 2012-10-28
    • 2022-10-17
    相关资源
    最近更新 更多