我正在使用DataTables库创建具有额外功能的表。我想实现的是,用户可以选择行,然后按下按钮。这将调用服务器,做一些事情,行应该相应地更新。更新行后DataTable不会重新绘制
但是,在完成对要更改的行进行迭代并设置其值后,重新绘制表格并不实际更新其值。我更新数据对象,使缓存无效并致电table.draw()
。这与this page上的最后一个例子非常相似。
我已创建JSFiddle此问题。该按钮更新所选行的日期对象,并重新绘制表格,但表格中的数据未更新。核心JS代码:
$('#updateRow').click(function() {
//Get the table
var table = $('#example').DataTable();
//Iterate over selected rows
var rowData = table.rows({
selected: true
}).every(function() {
//For every selected row, update startDate
var d = this.data();
d.startDate = "01/01/2017";
console.log('Set startDate of ' + d.name + ' to ' + d.startDate);
//Invalidate the cache
this.invalidate();
});
//Re-draw the table
table.draw();
});
尝试使用“Destroy”:true –
@IvanBarayev似乎没有什么区别可悲 – Jaims