JQuery onclick事件无法在第二页的JQuery数据表中识别

时间:2011-09-28 07:24:16

标签: javascript jquery jquery-datatables

我有JQuery Datatable,我想在点击删除链接时删除行。它适用于前10行,即第一页。当我从分页移动到另一个。它不起作用。这是我的代码:

$("#example tbody td.delete").click(function(event) {
                var row = $(this).closest("tr").get(0);
                oTable.fnDeleteRow( row );
    });

一行的所有最后一行都有“删除”类。

如何处理所有网页或所有记录?

3 个答案:

答案 0 :(得分:16)

如果您使用的是jQuery 1.7或更早版本,则需要使用实时事件处理程序,因为后续页面是动态添加的。

$('#example tbody td.delete').live('click', function(event) {
    var row = $(this).closest('tr').get(0);
    oTable.fnDeleteRow( row );
});

jQuery .live()

修改

看起来人们仍在使用此答案,因此要使用最新的最佳做法进行更新,不要使用.live()。 Live已在1.7中弃用,在1.9中删除。而是使用.on()处理程序。这可以通过将事件绑定到父元素,并使用您要作为可选 selector 参数的实际元素来处理委托事件。要在上面的例子中使用它,它看起来像这样:

$('#example tbody').on('click', 'td.delete', function(event) {
    var row = $(this).closest('tr').get(0);
    oTable.fnDeleteRow( row );
});

答案 1 :(得分:0)

当我试图绑定内联事件它的工作

时,我坚持了你
 onclick="$('#dataConfirmOK').attr('href',$(this).attr('url'))"

答案 2 :(得分:-1)

如果实时扩展程序不起作用,那么您可以添加实时扩展插件。 http://plugins.jquery.com/files/live-extension.js_4.txt

最好在加载时绑定下一页项目的“Click事件”。 请在每次加载页面时加载以下代码。并定义函数“click_function_to_call”。

<script type="application/javascript">
  $("#example tbody td.delete").click(click_function_to_call);
</script>