{hero}

select.headerCheckbox

自:选择 2.0.0

控制自动添加标题复选框。
请注意:该属性需要 选择 才能扩展 DataTables。

说明

如果您使用 DataTable.render.checkbox 渲染函数(是选择扩展的一部分)在 DataTable 中提供一个复选框列,那么选择将自动在标题中插入一个复选框,以便对当前选择状态进行总结,并轻松选择/取消选择所有行给终端用户。此选项可用于禁用复选框,如果您在 DataTables 中使用服务器端处理(serverSide),则会特别感兴趣,因为项目选择是选择中的客户端概念(例如,您只能选择客户端上可用的行,即 select-page)。

复选框的“全选”操作将选择 DataTable 当前搜索集合中的所有行,即,如果由于搜索词而删除了一行,那么它将不会被选择。然而,“取消全选”操作将导致所有行都取消选择,而不管它们是否被应用的搜索过滤掉。

同样,如果 DataTable 当前搜索集合中的所有行都被选中,则标题复选框将显示为已选中。如果没有选中任何行,则会显示未选中。否则,它将在它的“中间”状态下显示。

类型

布尔值

说明

启用时,任何使用选择提供的 DataTable.render.checkbox() 渲染器的列都将在其标题单元格中添加一个全局复选框。

请注意,当使用服务器端处理时,此选项的工作方式与将其设置为 select-page 相同,即,只能选择当前可见页面上的行。

字符串

说明

自 2.0.2 选择,此选项也可以字符串形式提供,其中可以采用以下值

  • none - 禁用标题复选框(与将其设置为 false 相同)
  • select-all - 选择表中的所有行(与将其设置为 true 相同)
  • select-page - 选择当前页面(仅限可见行)中的所有行。

默认

  • 值:true

示例

禁用标题复选框的添加

new DataTable('#example', {
	columnDefs: [
		{
			orderable: false,
			render: DataTable.render.select(),
			targets: 0
		}
	],
	select: {
		style: 'os',
		selector: 'td:first-child',
		headerCheckbox: false
	},
	order: [[1, 'asc']]
});

启用标题复选框的添加,并使其只能选择当前页面上的行

new DataTable('#example', {
	columnDefs: [
		{
			orderable: false,
			render: DataTable.render.select(),
			targets: 0
		}
	],
	select: {
		style: 'multi',
		selector: 'td:first-child',
		headerCheckbox: 'select-page'
	},
	order: [[1, 'asc']]
});