{hero}

列.可排序

自:DataTables 1.10

启用或禁用此列排序。

说明

使用此参数,您可以删除最终用户对一列排序的能力。对于生成的动态列,例如表中的“编辑”或“删除”按钮,此功能可能很有用。

请注意,此选项仅影响最终用户对一列排序的能力。开发人员仍可以在初始化时使用order 选项或order() 方法(如果需要)对一列进行排序。在这种情况下(自 DataTables 2 起),将在标题中显示列排序图标,但最终用户无法单击它以触发排序。

DataTables 2 引入了对复杂标题(colspanrowspan 具有多行和多个单元格)的改进支持。在此类情况下,此选项仍然适用,但它无法提供精细的控制,而您可能希望使用此控制来确定哪些单元格将具有排序监听器和排序图标。

为了实现精细的控制,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]
});

相关

下列选项直接相关,在你的应用程序开发中也许会有所帮助。