对于数据集中的所有行,我都有一个引导模式为“复选框”的引导表。默认情况下,将检查所有行。 TableColumn之一具有用于过滤表的过滤器TextFilter。用户在表上方有一个按钮,该按钮将删除所有已选中其复选框的行。
问题是,如果用户默认情况下选中了所有表行复选框,然后搜索并缩小行的范围,然后单击删除按钮,他们希望删除选中复选框的所有当前可见行。但是,它还会尝试删除所有已过滤的行,这些行在过滤掉后不再可见,但仍被选中。是否有事件告诉我当前显示了哪些过滤结果?这样,我可以将这些数据与所有选中的行的列表进行比较,以获取需要删除的内容的子集?
以下是我的表格的示例:
this.selectRowProp = {
mode: 'checkbox',
clickToSelect: false,
onSelect: this.handleCheckBox.bind(this),
onSelectAll: this.handleCheckAll.bind(this),
selected: [],
customComponent: this.customMultiSelect,
columnWidth: 34
};
<BootstrapTable
data={machines}
selectRow={selectRowProp}
striped
keyField="Id"
>
<TableColumn
{...ColumnOptions['machineId']}
key={'machineId'}
dataField={'machineId'}
/>
</BootstrapTable>
export const ColumnOptions = {
machineId: {
title: 'ID',
filter: { type: 'TextFilter', delay: 1000, placeholder:'Search' },
dataSort: true,
sortFunc: numericSortFunction
}
}
非常感谢