【问题标题】:Applying jQuery event handlers to AJAX content [duplicate]将 jQuery 事件处理程序应用于 AJAX 内容
【发布时间】:2010-07-06 15:45:07
【问题描述】:

我确信这是 AJAX 专家很早就学会的东西,但这是我第一次遇到它。使用 jQuery,我已将 .click() 处理程序分配给某些 CSS 类。但是,如果我通过 AJAX 重新加载某些内容,.click() 处理程序不会触发该内容。

看来我有两个选择:

  1. 将我的 .click() 处理程序分配放在 JScript 函数中,并在每次通过 AJAX 刷新内容时调用它。
  2. 在我的 AJAX 内容中使用 onclick="" 而不是 jQuery。

到目前为止,#1 似乎是最好的;它更加一致并且为 AJAX 生成更小的 HTML。

还有其他方法吗?也许从一开始就分配 .click() 处理程序的另一种方式?

【问题讨论】:

    标签: jquery css ajax handler


    【解决方案1】:

    您正在寻找 live() 方法。

    $('selector').live('click', function(){
      // your code.......
    });
    

    live 适用于现在或将来的元素。

    【讨论】:

    • 哇,我很高兴我问了。我不知道它的存在。谢谢!
    【解决方案2】:

    如果您使用 jQuery 1.4+,.live() 是核心的一部分。如果没有,那么有一个名为 livequery 的插件可以提供您正在寻找的功能。

    【讨论】:

      【解决方案3】:

      查看 bind 或 live 方法,查看:http://api.jquery.com/live/

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2011-01-08
        • 2011-03-28
        • 1970-01-01
        • 1970-01-01
        • 2013-02-12
        • 2014-09-10
        • 1970-01-01
        相关资源
        最近更新 更多