Я застрял с чем-то [это должно быть] довольно просто: после изменения содержимого ячейки я не могу сделать изменение видимым с draw()
.DataTables draw() не меняет отображение
Вот базовый образец, показывающий DataTable().data()
до и после изменения, в то время как отображаемая таблица остается неизменной.
$('table').DataTable({
data: [
{a: 'A1', b: 'B1'},
{a: 'A2', b: 'B2'}
],
columns: [
{data: 'a', title: 'A'},
{data: 'b', title: 'B'}
]
});
var dt = $('table').DataTable();
console.log('before:', dt.data()[0]);
$('button').click(function() {
dt.row(0).data().a = 'XXX';
dt.draw();
console.log('after:', dt.data()[0]);
});
К сожалению, она не может быть выполнена с SO фрагмент кода, который запускает много ошибок безопасности, прежде чем тайм-аута.
Но вы можете видеть, как он работает в this fiddle.
ПРИМЕЧАНИЕ: Я также попытался вставить invalidate()
до draw()
, без успеха.
Большое спасибо за эту ссылку DOC! Как заметил OP, _DataTables сохраняет ссылки на объекты, но не массив_ является ключевой информацией, пропущенной в базовом документе. – cFreed
благодаря вашему одобрению, я использовал эту библиотеку и очень хорошо реализовал –