0

我需要在表格中捕获带有 ajax 的元素的点击事件。

获取动态内容后,我可以看到带有元素总数的警报结果: alert($(".link").length);

我选择的所有元素都有“链接”类,我需要知道点击了哪些元素。

我试过 -> $(".link").click(function()... 但我发现只捕获了已经存在的元素。所有由 ajax 收费的元素都被忽略了。

4

3 回答 3

1

Could use some code to be 100% sure, but this works and with fiddle.

HTML:

<table>
    <tr class="list"><td>One</td></tr>
    <tr class="list"><td>Two</td></tr>
    <tr class="list"><td>Three</td></tr>
</table>

JS:

$("table").delegate('.list', 'click', function() {  
    var whichOne = $(this).text();
    alert("Handler for .click() called for " + whichOne);
});

http://jsfiddle.net/ADg2P/2/

UPDATE: Use delegate instead, missed the ajax part.

于 2013-02-21T21:47:33.757 回答
0

看看onjQuery提供的方法;或者live如果您使用的是旧版本的 jQuery。参考这里

绑定步骤如下所示:

$('.link').on('click', function() {
   // your code here
});

这会将现有元素以及 AJAX 提供的新元素绑定到您指定的单击事件。

希望这可以帮助。

于 2013-02-21T21:45:23.493 回答
0

on如果您使用的是 jQuery 1.7+,请使用该方法。

阅读这篇出色的文章 - http://www.elijahmanor.com/2012/02/differences-between-jquery-bind-vs-live.html

于 2013-02-21T21:46:17.020 回答