我如何使用 DataTables :
<tbody>
。问题是当我尝试向表中添加更多行时,我没有使用API,所以我只是直接向<tbody>
添加行,我希望DataTables 重新加入它自我使用新的<tbody>
。
我正在尝试Destroy表格,但会发生的是我收到此错误:
未捕获DOMException:无法在'Node'上执行'insertBefore':The 要插入新节点的节点不是其子节点 这个节点。(...)
我创建了一个Demo来重现我尝试使用Datatables做的事情,但它没有重现错误......
以下是我发现的同一错误的问题:
https://datatables.net/forums/discussion/28081/how-to-update-table-when-dom-changes-destroy-init-crash
答案 0 :(得分:0)
无需销毁和初始化,只需使用api重绘表
function Repopulate() {
//...
//...
//...
//init() //remove this line and add the one below
$("#changeLogTable").DataTables().draw();
}
答案 1 :(得分:0)
您只需在数据表配置中添加&#34;检索&#34;:true,选项。
function init(){
ruleChangeLogTable = $('#changeLogTable').DataTable({
//I use destroy because I want to recreate the table with new data.
"bLengthChange": false,
"bPaginate": false,
"retrieve": true, // this option is added
"bInfo": false,
"autoWidth": false,
"order": [[0, "desc"]],
"dom": '<"#searchInput"f>',
"oLanguage": { "sSearch": "" },
"columns": [
null,
null,
null,
null,
null
]
});
}
https://datatables.net/reference/option/retrieve了解更多详情,请参阅此
希望这有助于你