Javascript 重新加载DataTable后,大多数函数返回null
在重新加载dataTable之后,我遇到了一个奇怪的错误,大多数函数返回nullJavascript 重新加载DataTable后,大多数函数返回null,javascript,jquery,datatable,Javascript,Jquery,Datatable,在重新加载dataTable之后,我遇到了一个奇怪的错误,大多数函数返回null我尝试了table.fn销毁然后table.datatable(),但没有成功 var oTable = $('#sample_table').dataTable(); var nRow = $(this).parents('tr')[0]; var aData = oTable.fnGetData(nRow); //works 表重新加载后 var nRow = $(this).parents('tr')[0]
我尝试了
table.fn销毁
然后table.datatable()
,但没有成功
var oTable = $('#sample_table').dataTable();
var nRow = $(this).parents('tr')[0];
var aData = oTable.fnGetData(nRow); //works
表重新加载后
var nRow = $(this).parents('tr')[0];
var aData = oTable.fnGetData(nRow); //returns null
下面是一个显示问题的测试用例:
有什么想法吗
谢谢。DataTables在内部跟踪数据,因此它不知道对表元素所做的外部更改。使用提供的API将数据重新加载到数据表中 我将使用一些选项初始化数据表,这些选项指定如何使用mRender回调呈现编辑列:
var oTable = $('#sample_editable_1').dataTable({
"aoColumnDefs": [{
"aTargets": [4],
"mRender": function (data, type, full) {
return '<a class="edit" href="javascript:;">Edit</a>';
}
}]
});
为什么外部更改后重新初始化表不起作用<代码>$(“#示例可编辑_1>tbody”)。替换为(ajaxHtml)
oTablePart.dataTable()代码>虽然我不确定您为什么仍然直接操作DOM,但可以在reinit上传递选项“bDestroy”:true。dataTable({'bDestroy':true});
$('body').on('click', '#reload', function () {
//this is where ajax will be added
var theData = ['New', 'New', 'New', 'New', null];
var theTable = $('#sample_editable_1').dataTable();
theTable.fnClearTable();
theTable.fnAddData(theData);
});