How to add attribute in TR and TD?

2019-01-24 00:22发布

问题:

I want to add row using data datatables, and I can do it like this

var table = $('#mytable').DataTable();
table.add.row(['first column', 'second column', 'three column', 'etc']);

What I need is something like this (some attribute in TR and TD tag)

<tr id="someID">
<td>first column</td>
<td>second column</td>
<td>three column</td>
<td id="otherID">etc</td>
</tr>

How I can do it with datatables?

回答1:

Use createdRow and columns.createdCell options to define a callback function that will be called when TR and TD element are created.

$('#example').dataTable( {
  'createdRow': function( row, data, dataIndex ) {
      $(row).attr('id', 'someID');
  },
  'columnDefs': [
     {
        'targets': 3,
        'createdCell':  function (td, cellData, rowData, row, col) {
           $(td).attr('id', 'otherID'); 
        }
     }
  ]
});

See this example for code and demonstration.



回答2:

"fnRowCallback": function (nRow, aData) {
    var $nRow = $(nRow);
    $title = `Detalles de la Orden No. ${aData['noOrden']}`;
    $nRow.attr("title", $title);

    return nRow;
  },


标签: datatables