如何在没有数据时阻止jquery dataTable插件添加行和消息
当表中没有数据时,我们的产品所有者希望我们的空表只显示表头。 我似乎无法阻止dataTable创建一个带有“empty …”消息的行。
这是我用来初始化dataTable的代码。 我知道这里有些事情是错的。 我一直在做实验。 🙂
$('#InBox').dataTable({ "bFilter": false, "bPaginate": false, "bLengthChange": false, "bInfo": false, "oLanguage": { "sEmptyTable": '', "sInfoEmpty": '' } });
这是我试图在dataTable的init函数中放入的一些代码,但我不知道如何使它工作。
/* Table is empty - create a row with an empty message in it */ var anRows[0] = document.createElement('tr'); if (typeof oSettings.asStripClasses[0] != 'undefined') { anRows[0].className = oSettings.asStripClasses[0]; } var nTd = document.createElement('td'); nTd.setAttribute('valign', "top"); nTd.colSpan = oSettings.aoColumns.length; nTd.className = oSettings.oClasses.sRowEmpty; if (oSettings.fnRecordsTotal() > 0) { if (oSettings.oLanguage.sZeroFilterRecords.indexOf("_MAX_") != -1) oSettings.oLanguage.sZeroFilterRecords = oSettings.oLanguage.sZeroFilterRecords.replace("_MAX_", oSettings.fnRecordsTotal()); nTd.innerHTML = oSettings.oLanguage.sZeroFilterRecords; } else { nTd.innerHTML = oSettings.oLanguage.sZeroRecords; } anRows[iRowCount].appendChild(nTd);
担
试试这个
$('#InBox').dataTable({ "bFilter": false, "bPaginate": false, "bLengthChange": false, "bInfo": false, "oLanguage": { "sEmptyTable": '', "sInfoEmpty": '' }, "sEmptyTable": "There are no records", });
否则你可以试试这个
$('#InBox').dataTable({ "bFilter": false, "bPaginate": false, "bLengthChange": false, "bInfo": false, "oLanguage": { "sEmptyTable": '', "sInfoEmpty": '' } }); $('.dataTables_empty').html("No record found.");
老post,但是为了使用搜索引擎寻找正确答案的人们,我是如何完成的。
从dataTables源删除或注释掉以下行:
anRows[iRowCount].appendChild(nTd);
在缩小版中,搜索并删除:
b[i].appendChild(c);
如果你想删除从datatable插件附加的tbody,你可以试试这个解决方法:
$('.dataTables_empty').parent().parent().remove();
您可以使用oLanguange自定义DataTable插件:
"oLanguage": { "sZeroRecords": "-Put customized text-", "sEmptyTable": "-Put customized text-" } And if you want to remove those, just put these components into null: "oLanguage": { "sZeroRecords": '', "sEmptyTable": '' }
希望能帮助到你!
隐藏消息的最新方法是使用语言选项
$('#loggedMessages').DataTable({ "language": { "emptyTable": ' ', "zeroRecords": ' ' } });