[英]Datatable don't create certain rows
有沒有創建特定行的回調?
這是我的數據表對象:
$('#table').DataTable({
dom: "t<'col-sm-5'i><'col-sm-7'p>",
autoWidth: false,
serverSide: true,
aaSorting: [[8, 'desc']],
beforeCreatedRow: function(row, data) {
if ( data.field == "OFF" ) {
// DON'T CREATE THIS ROW
}
},
rowId: 'id',
lengthChange: false,
iDisplayLength: 10,
columns: [
{data: "column1"},
{data: "column2"},
{data: "column3"},
{data: "column4"},
{data: "column5"},
{data: "column6"}
]
});
我僅在示例中使用beforeCreatedRow
事件。 我不確定此事件是否存在。 只是為了向您展示我的需求。
如您所見,如果data.field
值為OFF,則data.field
創建行
您可以使用rowCallback
方法像這樣
var table = $('#table').DataTable({
"rowCallback": function(row, data, index){
if ( row.field == "OFF" ) {
jQuery(row).hide();
}
}
});
在這里更多細節
我不會在DOM中填充無用的行。 與其隱藏它們,不如跳過它們:
ajax: {
url: 'some/url/',
dataSrc: function(d) {
var data = d.filter(function(row) {
if (row.field != "OFF") return row
})
return data
}
}
你可以事先刪除不需要的行dataSrc
被鈎住xhr.dt
事件:
$('#example').on('xhr.dt', function(e, settings, json, xhr ) {
json.data = json.data.filter(function(row) {
if (row.field != 'OFF') return row
})
})
在此處查看演示-> http://jsfiddle.net/g4h7950t/
注意:上面的示例使用的是{ data: [..] }
src。 簡直就是我手上的東西。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.