DataTables:添加行后的缓存值

时间:2017-09-04 10:35:52

标签: caching datatables

我在两张桌子之间移动一些行。我有一个动态列,根据其他一些字段值(选择)假定一个不同的值。这是我的代码示例:

var clickedRow = queueTable.row($(elm))
var extraCols = [
    12
];
$.merge(clickedRow.data(), extraCols);
$(secondTable.row.add(clickedRow.data()).draw().node())
clickedRow.remove().draw();

问题是第一次移动了行之后,如果我再次移动它来更改动态列值(例如更改为13),旧值仍然会缓存,即使我从console.log看到的内容(clickedRow) .data())该对象包含新的刷新值。如何刷新缓存(如果它是缓存问题)?我尝试使用* .draw()重绘两个表,但它没有解决。

1 个答案:

答案 0 :(得分:1)

你有一些特点,但很难知道你为什么这么做而没有完整的代码。我只是"移动"或复制内容:

$('#queueTable').on('click', 'tbody tr', function() {
   var clickedRowData = queueTable.row(this).data();
   queueTable.row(this).remove().draw();
   clickedRowData.push('42');
   secondTable.row.add(clickedRowData).draw();
})

<强> http://jsfiddle.net/uh3t80oL/

NB push()应该用于简单数组。您可以使用push('42', 'qwerty', new Date())等添加多个值。