我设置了一个数据表,最初从服务器获取一些数据并代表它,然后一切都留给客户端。一些选项是:
serverSide: false,
sAjaxSource: mySource,
我的$ .fn.DataTable.version是1.10.2。
然后我需要在客户端更改表下的aaData,因为执行了一些数据处理工作。我需要更新DT以显示客户端更改的临时数据,而不向服务器发送另一个请求(出于两个原因:防止无用流量并且因为该数据正在被更改)。 我正在寻找一种方法来编辑底层的DT数据库来编辑它,然后再次调用
myTable.draw();
在我的桌子上我获得了刷新实时而没有发送另一个到服务器。
问题是,我可以访问DT数据阵列吗?我可以编辑它吗?
如果可能的话怎么做?
编辑:我需要为表格提供最初从服务器获取的完整bean数组,格式相同。因此,在我的情况下,单独的行/单元格添加/编辑和客户端构建函数不适合,除非我手动清除所有对象。
答案 0 :(得分:4)
<强>解强>
使用以下代码:
// 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();
<强>样本强>
请参阅this jsFiddle以获取代码和演示。