javascript - 无法从 jTemplate 输出中 Hook Click 事件

标签 javascript jquery jtemplates

当使用 jTemplate 中的 foreach 时,jQuery 不会 Hook 所应用模板内任何 DOM 元素的 .click() 事件。

诸如 .live('click', function()) 之类的解决方案不起作用(部分原因是 .live 已被弃用,但引入了替代方案 .on('click ', function()) 做同样的事情...),我不知道如何从 jTemplate 的结果中获取 Click 事件。

我尝试过的事情:

  • .live('click', function())
  • .click(function())
  • .on('click', function())
  • $(window).load(function())$(document).ready(function()) 中的所有 3 个事件,并且可以自由地在脚本标签
  • 调用 .processTemplate() 函数之前和之后的所有 3 个事件

目前,我对如何解决这个问题没有更多的想法。

我引用的jQuery版本是2.1.3,jTemplate是0.8.4。

最佳答案

对于 jQuery 1.7 及以上版本,要委托(delegate)事件,您应该使用 on()方法并传递选择器参数。

这是一个示例,即使通常最好将其绑定(bind)到最近的静态容器,而不是文档:

$(document).on('click', 'selector', handler);

您可以阅读以下链接:http://learn.jquery.com/events/event-delegation/

关于javascript - 无法从 jTemplate 输出中 Hook Click 事件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28648599/

相关文章:

javascript - 旋转后的3D坐标

javascript - 如何在页面加载和自动点击时获取警报消息内容

jQuery on() 而不是 live() 不起作用

javascript - 正则表达式 Javascript 替换

javascript - jTemplates {#for} 在 Internet Explorer 7 中不工作,错误?

javascript - ExpressJS 是否遵循 MVC 模式?

javascript - jQuery 调整大小事件未触发

javascript - JavaScript 中的时尚弹出窗口?

jquery - 为数据表选择最快的模板插件

jquery - jTemplates 与 jQuery 模板。哪一个更好?有更好的吗?