draw()
自:DataTables 1.10 起
重新繪製表格。
描述
當您執行諸如新增或刪除列、變更表格的排序、篩選或分頁特性等動作時,您會希望 DataTables 更新顯示以反映這些變更。此函式即為此目的而提供。
大多數 DataTables API 動作不會自動執行重繪,以允許動作分組(例如,如果您將多個列分組新增,則會更有效率)。請記住,由於 DataTables API 的鏈式性質,呼叫 draw()
方法只是將 .draw()
新增到您的其他 API 方法呼叫,如下面的範例所示。
請注意,使用除第一個參數為 page
以外的任何選項呼叫 draw()
將導致對表格執行完整的重新排序和重新搜尋。當您希望更新表格但不要發生這些動作時(例如,頁面變更不需要完整的重新排序/重新搜尋),則會提供 page
選項。
類型
function draw( [paging] )
- 描述
在目前上下文中重新繪製 DataTables,並根據需要選擇性地更新排序、搜尋和分頁。
- 參數
名稱 類型 可選 1 paging
是 - 預設值:true 此參數用於決定 DataTables 將執行的繪製類型。有三個選項可用(請注意,字串選項需要 DataTables 1.10.8 或更新版本)
full-reset
或true
(預設值) - 將重新計算排序和搜尋,並在其新位置重新繪製列。分頁將重設回第一頁。full-hold
或false
- 將重新計算排序和搜尋,並在其新位置重新繪製列。分頁將不會重設 - 即仍然會顯示目前頁面。page
- 將不會更新排序和搜尋,並且分頁位置將保持不變。這對於分頁(即page()
)很有用,當在繪製之間沒有變更資料時。
請注意,字串選項需要 DataTables 1.10.8 或更新版本。舊版本僅支援布林選項。
- 返回
DataTables API 實例
範例
根據自訂輸入篩選表格並重新繪製
var table = new DataTable('#myTable');
$('#myFilter').on('keyup', function () {
table.search(this.value).draw();
});
排序然後重新繪製表格,同時保持目前的分頁位置
var table = new DataTable('#myTable');
// Sort by column 1 and then re-draw
table.order([[1, 'asc']]).draw(false);
變更表格的頁面,然後重新繪製(使用 page
選項)
var table = new DataTable('#myTable');
table.page('next').draw('page');
相關
以下選項直接相關,也可能在您的應用程式開發中很有用。