select.selectable
自:Select 2.1.0 开始
设置一个函数,该函数将确定某行是否应该可选。
请注意 - 此属性需要 DataTables 的 Select 扩展。
说明
在某些数据集上,你可能希望不允许选择某些特定的数据行。此选项完全提供了此功能,它允许你定义一个函数,该函数将返回一个值,指示应该基于你想定义的任何逻辑选择该行。
函数传递有关该行的信息,强烈建议你仅使用行数据对你想要执行逻辑检查,以尽可能保证函数的快速运行。你可以使用表格节点或在 API 中查找该行,但由于这个函数(如果已定义)可以被频繁调用,所以这些操作会减慢表格的速度。
如果未定义此函数(没有默认函数),则所有行都被认为是可选择的。
类型
函数 可选(数据,tr,索引)
- 参数
名称 类型 可选 1 行
否 行的 data 源对象或数组(取决于
columns.data
)。2 tr
否 节点的
tr
元素。请注意,如果 Ajax 加载数据且该行尚未呈现(参见deferRender
),它可能为null
。3 索引
否 DataTable 中行的 data 索引(
row().index()
)。- 返回
如果该行为可选择,则返回
true
,否则返回false
。
默认
- 值:
undefined
实例
使用该行的 data 点作为可选标志
new DataTable('#example', {
select: {
selectable: rowData => rowData.outdated
}
});
检查该行中的 data 来决定它是否应该可选。还基于相同的逻辑添加一个 class
new DataTable('#example', {
rowCallback: function (tr, rowData) {
if (rowData[2] === 'New York') {
tr.classList.add('unselectable');
}
},
select: {
selectable: function (rowData) {
return rowData[2] !== 'New York';
}
}
});
相关内容
以下选项是直接相关的,并且在你的应用程序开发中也可能有用。