如何从js对象数组中刷新Datatable数据

时间:2014-10-27 15:54:29

标签: javascript jquery jquery-datatables

我正在使用jquery DataTables插件来显示一个对象数组。我想清除表并使用更改的数据重绘。但是,到目前为止,我能够做到这一点的唯一方法就是破坏表格并重新初始化。我想知道是否有一种从JS数据源刷新的简单方法。这就是我正在做的,它有效,但感觉不对......

if (NAMESPACE.table){
  NAMESPACE.table.destroy();
}

NAMESPACE.table = $('#assets-table').DataTable({
  "data": filteredData,
  "columns": [
      { "data": "id" },
      { "data": "type" },
      { "data": "city" },
      { "data": "state"}
  ]
 });

2 个答案:

答案 0 :(得分:6)

如果要清除dataTable中的数据,只需调用table.clear()即可清除表中的所有单元格。

然后使用table.row.add().draw();

添加新数据

table.destroy()不会删除表格单元格中的数据,它只会破坏您创建的dataTable的当前实例。

答案 1 :(得分:5)

简化:

NAMESPACE.table = $('#assets-table').DataTable({
  "data": filteredData,
  "columns": [
      { "data": "id" },
      { "data": "type" },
      { "data": "city" },
      { "data": "state"}
  ],
 "destroy": true
 });