Jquery数据表在第二页上不起作用

时间:2015-04-28 04:36:55

标签: javascript jquery html css datatable

我使用的是jquery datatables插件,它在第一页后无效,事件点击功能仅适用于第一页。

所以我发现了 https://datatables.net/faqs/

问。我的活动不适用于第二页

  

一个。将事件附加到由DataTables控制的表中的单元格时,   你需要小心它是如何完成的。因为DataTables删除了   来自DOM的节点,可能使用静态事件侦听器应用的事件   无法将自己绑定到表中的所有节点。要克服   这个,只需使用jQuery委托的事件监听器选项,如图所示   这个例子。此外,您可以使用我的Visual Event书签   帮助调试事件问题。

他们建议这样:

$('#example tbody').on('click', 'tr', function () {
    var name = $('td', this).eq(0).text();
    alert( 'You clicked on '+name+'\'s row' );
});

但是,在我的情况下,我需要这样的选择器:

  $('#dataTables tbody tr').on('click', 'td', function (event) {
        if ($(this).attr('id') != "first" && $(this).parent().attr('data-href') !== undefined) {
            document.location = $(this).parent().attr('data-href');
        }
    });

如何通过保留选择器目标来解决问题?感谢。

1 个答案:

答案 0 :(得分:2)

您仍然需要使用&#34; #example tbody&#34; 将其绑定到tbody,然后在第二个选择器中将&#34; tr td&#34; < / strong>,然后它应该在更改页面后绑定到td。

表行及其子项发生了变化,因此静态地将它们绑定到它们仍然缺少这一点,您必须使用可选的绑定参数来深入了解更改的元素,让您可以访问它们即使他们改变了