动态添加行后,jquery DataTable将ID添加到TR元素
我正在使用此代码初始化数据表:动态添加行后,jquery DataTable将ID添加到TR元素,jquery,datatables,Jquery,Datatables,我正在使用此代码初始化数据表: $('#table-groups').dataTable( { "bJQueryUI": true, "sPaginationType": "full_numbers", "bFilter": false, "bInfo": false, "aLengthMenu": [[10, 25, 50, -1], [10, 25, 50, "All"]], "aoColumns": [ { "sClass"
$('#table-groups').dataTable( {
"bJQueryUI": true,
"sPaginationType": "full_numbers",
"bFilter": false,
"bInfo": false,
"aLengthMenu": [[10, 25, 50, -1], [10, 25, 50, "All"]],
"aoColumns": [
{ "sClass": "name" },
{ "sClass": "tools", "bSortable": false},
],
});
现在我通过服务器端脚本添加行,如下所示:
$('#table-groups').dataTable().fnAddData( ["<strong>"+$_returnvalue.name+"</strong>","<div class=\"cell edit\"> Group ID is: "+$_returnvalue.entryid+" </div>"]);
$(“#表组”).dataTable().fnAddData([“”++$\u returnvalue.name+“”,组ID为:“++$\u returnvalue.entryid+”);
我的问题是:有没有办法插入$\u returnvalue.entryid
的值作为
的ID?您可以使用回调函数
你可以做一些类似的事情,比如,aData[0]
必须是id
$('#example').dataTable( {
"fnCreatedRow": function( nRow, aData, iDataIndex ) {
$(nRow).attr('id', aData[0]);
}
});
演示:此处未使用服务器端数据表。这个答案可能会帮助那些使用服务器端datatable并试图放置唯一ID(来自服务器端,基于db数据)的人
您只需通过以下键发送
ID
:DT_RowId
(作为响应,从服务器端发送)。它不需要在前端进行任何更改。有关这方面的更多详细信息,请参见以下链接:您的解决方案是动态创建/填充数据表的最佳解决方案。非常感谢你。另外,可能会在属性id中添加“行”作为前缀
var MyUniqueID = "tr123"; // this is the uniqueId.
var rowIndex = $('#MyDataTable').dataTable().fnAddData([ "column1Data", "column2Data"]);
var row = $('#MyDataTable').dataTable().fnGetNodes(rowIndex);
$(row).attr('id', MyUniqueID);