columns.searchPanes.combiner
自:SearchPanes 1.0.0 起
设置要实现的面板逻辑类型。
请注意 - 此属性需要 DataTables 的SearchPanes 扩展。
说明
标准情况下,SearchPanes 在进行了多个选择时将使用 OR 逻辑。但是有时可能需要实现 AND 逻辑,例如要从数据集删除行。
注意:与columns.searchPanes.combiner
一起使用searchPanes.cascadePanes
时,必须确保数据适合所做选择。searchPanes.cascadePanes
是在考虑到默认的or
逻辑后才开发的,在大多数情况下使用and
逻辑都能正常工作,但在极少数情况下取消选择时可能会产生一些意外结果。
注意:使用columns.searchPanes.combiner
搭配数组数据时,如果所有选择项都存在于数组中(尽管数组中可能还有其他数据),则将返回该行。
类型
默认
- 值:
or
columns.searchPanes.combiner
参数的默认值为or
,这意味着标准情况下面板将使用 OR 逻辑进行搜索。
示例
将 Combiner 选项设置为 and 逻辑
new DataTable('#myTable', {
layout: {
top1: 'searchPanes'
},
columnDefs: [
{
searchPanes: {
combiner: 'and'
},
targets: [4]
}
]
});
使用组合选项删除行
var dt = new DataTable('#myTable', {
layout: {
top1: 'searchPanes'
},
columnDefs: [
{
searchPanes: {
options: [
{
label: 'Not Edinburgh',
value: function (rowData, rowIdx) {
return rowData[3] !== 'Edinburgh';
}
},
{
label: 'Not London',
value: function (rowData, rowIdx) {
return rowData[3] !== 'London';
}
}
],
combiner: 'and'
},
targets: [3]
}
],
select: {
style: 'os',
selector: 'td:first-child'
},
order: [[1, 'asc']]
});