无法从jTemplate输出中挂钩Click事件

时间:2015-02-21 17:09:37

标签: javascript jquery jtemplates

当使用来自jTemplate的foreach时,jQuery不会挂钩应用模板中任何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个事件,以及脚本标记中的所有3个事件
  • 调用.processTemplate()函数
  • 之前和之后的所有3个事件

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

我的jQuery版本参考是2.1.3,jTemplate是0.8.4。

1 个答案:

答案 0 :(得分:2)

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

这是一个例子,即使最好将它绑定到最近的静态容器,而不是document

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

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