我正在使用datatables.js https://www.datatables.net/并遇到一个问题,我希望用户为显示的覆盖率表选择一行。

我已经尝试了好几种方法,但是无法正常工作,我的脚本检查了所有数据表,而不是您要选择的数据表。我理解这是因为在我的代码中,我使用var table = $('table').DataTable();来获取所有表。

但是我不知道如何指定它,因此它检查是否在数据表中的某一行上设置了selected类。

var table = $('table').DataTable();

$('table tbody').on( 'click', 'tr', function () {
    if ( $(this).hasClass('selected') ) {
        $(this).removeClass('selected');
    }
    else {
        table.$('tr.selected').removeClass('selected');
        $(this).addClass('selected');
    }
} );

最佳答案

on()事件中,获取行的表,而不是使用函数外部定义的表。



$('table tbody').on( 'click', 'tr', function () {
    var table = $(this).closest("table");
    if ( $(this).hasClass('selected') ) {
        $(this).removeClass('selected');
    }
    else {
        table.$('tr.selected').removeClass('selected');
        $(this).addClass('selected');
    }
} );

关于javascript - 允许为显示的每个数据表选择一次行,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/29393464/

10-12 00:17
查看更多