可数据的客户端数据更改/重绘

Datatable client-side data change/redraw

本文关键字:数据 重绘 客户端      更新时间:2023-09-26

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

serverSide: false,
sAjaxSource: mySource,

我.fn.DataTable美元。版本号:1.10.2

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

myTable.draw();

在我的表上,我获得一个刷新实时而不发送另一个get到服务器。

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

如果可能的话怎么做?

编辑:我需要为表提供完整的bean数组,因为它最初从服务器获取,格式相同。因此,单独的行/单元格添加/编辑和客户端构建功能不适合我的情况,除非我手动循环所有对象。

<

解决方案/strong>

使用以下代码:

// 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();