我正在尝试根据某些条件从datatable中删除/删除行。我尝试了以下代码。
y2=700
似乎不起作用。虽然 rowCallback: function (row, data, index) {
if (data["ServiceID"] == 0) {
$(row).remove();
}
},
工作正常但它只是隐藏行不会删除或从数据表中删除它。
答案 0 :(得分:1)
此功能不删除行,只是将其内部设置为空。
$(row).html("");// not deleting setting inside null.
您可以使用这种方式,在创建元素(初始化)时,您无法自行删除行,但您可以将其设置为null。如果要在初始化后删除,可以执行以下操作:
1)删除项目将它们添加到数组中;
2)初始化后,使用remove()函数从datatable中删除,然后使用draw函数重新绘制表格内容。
或
以前创建数据表的替代方法,删除未使用的数据。
答案 1 :(得分:0)
您需要使用redraw
方法,删除后,您需要$(document).ready(function() {
var table = $('#example').DataTable();
$('#example tbody').on( 'click', 'tr', function () {
if ( $(this).hasClass('selected') ) {
$(this).removeClass('selected');
}
else {
table.$('tr.selected').removeClass('selected');
$(this).addClass('selected');
}
} );
$('#button').click( function () {
table.row('.selected').remove().draw( false );
} );
} );
表格
odbc_num_rows()
答案 2 :(得分:0)
您可以将fnDeleteRow
功能与fnGetPosition
功能结合使用。
var ePos = oTable.fnGetPosition('THE_ROW_ELEMENT');
rowCallback: function (ePos, data, index) {
if (data["ServiceID"] == 0) {
oTable.fnDeleteRow(ePos);
}
},
我知道这是一种不同的方法,但认为它可能对你有帮助。
The answer to this question might help you to understand the functionality of these functions