Datatable客户端数据change/redraw

Datatable client-side data change/redraw

我设置了一个数据tables,它最初从服务器获取一些数据并表示它,但随后一切都留给了客户端。一些选项是:

serverSide: false,
sAjaxSource: mySource,

我的 $.fn.DataTable.version 是 1.10.2.

然后我需要在客户端更改 table 下的 aaData,因为执行了一些数据处理。我需要更新 DT 以显示客户端更改的临时数据,而无需向服务器发送另一个请求(原因有两个:防止无用的流量以及因为该数据正在被更改)。 我正在寻找一种方法来编辑底层 DT 数据 bean 来编辑它,然后再次调用

myTable.draw();

在我的 table 上,我获得了实时刷新,而没有向服务器发送另一个请求。

问题是,我可以访问DT数据数组,我可以编辑它吗?

如果可以的话是怎么做到的?

编辑:我需要向 table 提供完整的 bean 数组,因为它最初是从服务器获取的,格式相同。所以个人 row/cell add/edit 和客户端构建函数在我的例子中不是 suitable ,除非我手动循环所有对象。

SOLUTION

使用下面的代码:

// Retrieve data
var data = table.ajax.json();

// Modify data
$.each(data.data, function(){
   this[0] = 'John Smith';
});

// Clear table
table.clear();

// Add updated data
table.rows.add(data.data);

// Redraw table
table.draw();

DEMO

有关代码和演示,请参阅 this jsFiddle