我想删除datatable中的行。这是我使用的数据表代码:
var aSelected = [];
oTable = $('.itemPublished').dataTable({
"bJQueryUI": true,
"sPaginationType": "full_numbers",
"bServerSide": true,
"bProcessing": true,
"sAjaxSource": "/item/datatable",
"bDeferRender": true,
"iDisplayLength":20,
"aLengthMenu": [[10, 20, 50, 75, 100, 150], [10, 20, 50, 75, 100, 150]],
"aoColumnDefs": [
{ "bSortable": false, "aTargets": [ 2, 3, 4 ] },
{ "sClass": "left", "aTargets": [ 1 ] }
],
"fnRowCallback": function( nRow, aData, iDisplayIndex ) {
if ( jQuery.inArray(aData.DT_RowId, aSelected) !== -1 ) {
$(nRow).addClass('row_selected');
}
$(nRow).addClass('gradeA');
return nRow;
}
});
我想测试一个事件来从数据表中删除一行。该事件由数据表DOM之外的按钮触发。我试过这样做:
$('.test').live('click', function () {
oTable.fnDeleteRow( 0 );
});
检查它是否可以删除表中的第一行,但它没有,也不会产生任何错误。我哪里错了?
答案 0 :(得分:7)
在此处找到以下评论:http://datatables.net/forums/discussion/6208/hyperlink-event-to-delete-row/p1:
“由于您正在使用服务器端处理,并且fnDeleteRow对您的服务器端环境一无所知,您需要对服务器进行Ajax调用以执行删除操作,然后在表格上调用fnDraw以使其为使用新数据集刷新。“