columns.orderable
啟用或停用此欄位的排序功能。
描述
使用此參數,您可以移除終端使用者對欄位進行排序的能力。這對於產生的內容欄位可能很有用,例如,如果您的表格中有「編輯」或「刪除」按鈕。
請注意,此選項僅影響終端使用者排序欄位的能力。開發人員仍然可以使用初始化時的order
選項或在需要時使用 order()
方法來排序欄位。在這種情況下,從 DataTables 2 開始,標頭中欄位排序的圖示將會顯示,但終端使用者無法點擊它來觸發排序。
DataTables 2 引入了對複雜標頭(多行和具有 colspan
和 rowspan
的儲存格)的改進支援。此選項在此類情況下仍然適用,但它沒有提供您可能希望擁有的細緻控制,以確定哪些儲存格將具有排序監聽器和排序圖示。
為了使這種細緻的控制可用,DataTables 將在表格標頭中的 th/td
儲存格上尋找 data-dt-order
屬性。此屬性的值(如果存在,則完全是可選的)控制排序監聽器和圖示。
data-dt-order="disable"
- 排序監聽器不會附加到這些儲存格,也不會顯示排序狀態圖示。data-dt-order="icon-only"
- 排序監聽器不會附加到這些儲存格,但排序狀態圖示將會顯示。
如果未定義,則儲存格將附加一個排序監聽器並顯示狀態圖示(除非使用上面詳細介紹的 columns.orderable
選項停用)。
data-dt-order
選項可以應用於表格標頭中的 tr
元素,以及個別儲存格。如果應用於 tr
,則給定的配置將向下層疊到該行的所有儲存格。
data-dt-order
屬性是 DataTables 唯一無法透過 Javascript 設定且從 DOM 讀取的選項(如果需要,您可以在表格初始化之前使用 Javascript 新增屬性)。未來,我們可能會提供透過初始化選項建構複雜標頭的能力,這也將解決這個問題。
類型
此選項可以提供以下類型
預設值
- 值:
true
範例
停用第一欄的排序,並設定表格的預設排序(否則預設仍將是依欄索引 0 排序)
new DataTable('#myTable', {
columnDefs: [{ orderable: false, targets: 0 }],
order: [[1, 'asc']]
});
使用 columnDefs
停用第一欄的排序
new DataTable('#myTable', {
columnDefs: [{ orderable: false, targets: 0 }]
});
使用 columns
停用第一欄的排序
new DataTable('#myTable', {
columns: [{ orderable: false }, null, null, null, null]
});
相關
以下選項是直接相關的,可能在您的應用程式開發中也很有用。