数据表突出显示第一个分页页以外的行



Datatables插件在尝试突出显示超出第一个分页页面的行时给了我一些问题。

在下面的JS中,您将看到注释掉的代码,我将类信息添加到所有行。当我这样做时,您分页到其他页面时,其他页面上的所有行都会突出显示。您还将看到下面的未注释代码,其中我将类信息添加到除第一行之外的所有行,但是在这种情况下,当我分页到其他页面时,这些行没有突出显示。

有人知道为什么会发生这种情况吗?

JSFiddle:

https://jsfiddle.net/ebRXw/560/

JS:

$(document).ready(function () {
    $('table').dataTable({
        "paging": true,
        "ordering": true,
        "filter": false,
        "length": false,
        "info": false
    });
    var table = $("table").dataTable();
    var rows = table.$("tr");
    var rowsNext = table.$("tr").next();
    var cell = table.$("td:nth-child(2)");
    var cellNext = table.$("tr").next().children("td:nth-child(2)");
    /*rows.addClass("info");*/
    rowsNext.addClass("info");
});

rowsNext.addClass("info")仅将类添加到当前页面上的行中,并且仅在页面加载时运行一次。

如果您想在每次加载不同的页面时都运行它,您可以向表的绘制事件添加一个事件侦听器,如下所示:

$("table").on("draw.dt", function(){
    var rowsNext = $("table").dataTable().$("tr").next();
    rowsNext.addClass("info");
});

此代码将在每次绘制新页面时运行。

演示:https://jsfiddle.net/alan0xd7/ebRXw/567/

最新更新