销毁并重新创建jQuery数据表

fef*_*efe 6 jquery datatables create-table destroy

我有两个带服务器端处理的jQuery数据表.我有一个复选框,我隐藏并显示两个表.我想销毁无显示的并创建另一个表.我该怎么做?

这是我尝试但ajax.reload不解雇的.

if ($('#mode').is(':checked')) {
    Table2.ajax.reload();
    Table1.clear();
    Table1.destroy();
} else {
    Table1.ajax.reload();
    Table2.clear();
    Table2.destroy()
}

var Table1 = $('#timesheet-table').DataTable({})
var Table2 = $('#timesheet-table-2').DataTable({})
Run Code Online (Sandbox Code Playgroud)

小智 8

就我而言,要重置表格,我只需执行以下操作:

$('#table_id').DataTable().clear().destroy();
$('#table_id').empty();
Run Code Online (Sandbox Code Playgroud)

有了这个,您将表重置回其初始状态,然后您可以重新初始化它。


Pau*_*ian 4

据我所知,您永远不会在页面中显示 2 个数据表,所以为什么不只使用一个。您可以初始化数据表并使用这样的序列

table.destroy();
$('#myTable').empty();
table = $('#myTable').DataTable( {
        columns: json.columns,
        data:    json.rows
});
Run Code Online (Sandbox Code Playgroud)

根据需要重新创建它。