{hero}

rows().invalidate()

自:DataTables 1.10

使 DataTables 中所選列的資料失效。

描述

DataTables 會快取表格中每個儲存格的內容資訊,以提高表格操作的效能,例如排序和搜尋。如果您修改了儲存格的內容(對於 DOM 資料來源表格)或陣列/物件值(對於 Ajax/JS 來源表格),DataTables 不會知道發生了這種情況。此方法可用於告知 DataTables 重新讀取該列的資料來源資訊(無論是來自 DOM 還是物件/陣列 - 無論原始資料來源是什麼)。

這提供了一個替代方案,可以使用 row().data()cell().data() 來變更儲存格的值。通常,data 方法優先於失效方法,因為它們使用的程式碼較少,但當表格的資料來源是可以使用該物件自身的方法更新的外部物件時,失效方法真正發揮作用。

類型

function rows().invalidate( [ source ] )

描述

使所選列中的資訊失效

參數
傳回

DataTables API 實例,結果集中包含所選列的參考

範例

使用 jQuery 修改儲存格的內容,然後使 DataTables 保存的列失效

var table = new DataTable('#myTable');
var tr = $('#example tbody tr:eq(0)');

tr.find('td:eq(0)').html('Updated');
table
	.rows(tr)
	.invalidate()
	.draw();

使用資料物件實例,並在外部資料變更後使用失效來更新表格

var pupils = [new Pupil(), new Pupil(), new Pupil(), new Pupil()];

// Create table with data set
var table = new DataTable('#myTable', {
	data: pupils
});

// Modify the data in the data set
pupils[0].name('Fred Green');
pupils[3].name('Fiona Wilder');

// Invalidate and redraw all rows
table
	.rows()
	.invalidate()
	.draw();

相關

以下選項直接相關,可能在您的應用程式開發中也很有用。