【问题标题】:Access specific line Datatable访问特定行数据表
【发布时间】:2020-05-27 07:50:30
【问题描述】:

我是这样定义数据表的:

var dat_one = $('#dat_one').DataTable({
  select: {
    style: 'single'
  },
  responsive: true,
});

我想访问我的数据表的特定行。我想为包含特定字符串的行着色。 (例如:第 1 列包含“Ashton Cox”和第 3 列包含“San Francisco”的行

我尝试使用此代码为选定的行着色:

$(".selected").css('background-color', '#ccffcc');

但是如果我的行没有被选中则不起作用。

【问题讨论】:

  • 为什么不用纯CSS来代替.selected{background-color:newColor}
  • 你能显示 HTML 代码吗?
  • @MilindAnantwar 我想访问 UNSELECTED 行,这就是我的观点

标签: javascript jquery datatable datatables


【解决方案1】:

尝试使用 rowCallback。在那里您可以通过值检查来更改行属性。

$('#example').dataTable( {
  "rowCallback": function( row, data ) {
    if ( data.grade == "A" ) {
      $('td:eq(4)', row).html( '<b>A</b>' );
    }
  }
} );

这是documentation。请注意,该函数还有许多其他参数可供您使用。

rowCallback( row, data, displayNum, displayIndex, dataIndex )

【讨论】:

    【解决方案2】:

    documentation 之后,这是 Aruna Perera 的替代方案:

    // var table = $('#dat_one').DataTable()  ;
    dat_one.rows().eq(0).each( function ( index ) {
        var row = table.row( index );
    
        var data = row.data();
    
        var column0value = data[0];
        if(column0value == "Airi Satou"){
          $(row.node()).css("background-color", "yellow")
        }
        // ... do something with data(), or row.node(), etc
    } );
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2017-04-09
      • 1970-01-01
      • 2023-03-09
      相关资源
      最近更新 更多