1

我有一个小的 jQuery 调用,可以完美地返回绑定到 on 函数的元素:

$(".claim-detail a").on("click", function(){
...some stuff   
})

然后是一点html:

<p class="claim-detail"><a href="#modal" data-toggle="modal">get the data</a></p>

完美运行。

但我需要在 javascript 中生成声明详细信息 html。当我把它移到那里时,页面上生成的 html 没有问题,但是 jQuery 函数完全中断。在 javascript 中哪个片段在哪个片段之前并不重要。

我做错了什么?

4

2 回答 2

3

您需要对在 DOM 就绪时不存在的动态生成的元素使用事件委托。将您的点击处理程序更改为:

$(document).on("click", ".claim-detail a", function(){

有可能(我这么说是因为我们不知道您的代码是如何生成的)您的点击处理程序试图在元素存在之前绑定到它

于 2013-05-28T19:53:22.803 回答
1

利用

<p class="claim-detail"><a onclick="myNewFunction()" href="#modal" data-toggle="modal">get the data</a></p>

myNewFunction 是您在事件中使用的函数。其他选项是在您实际完成在 DOM 中创建 HTML id 和/或类时创建事件。

于 2013-05-28T20:09:53.827 回答