我创建了一个复选框列表,我希望当我点击一个或多个复选框时,结果应根据选中的复选框进行过滤。 任何人都可以帮助我如何存档这个。我使用Angular 2.
答案 0 :(得分:0)
您可以应用如下逻辑,可能需要修改某些内容。
public selectedItems: any = [];
将数据源分配到复选框后:(添加IsSelected字段,以便我们可以在需要时对数据应用过滤器)
this.dataSource.forEach((row: any) => {
row.IsSelected = false;
});
CkeckBox Click Event:
public OnCheckBoxClicked(value: any): any {
this.selectedItems = [];
setTimeout(() => {
let selectedRows = this.dataSource.filter((row: any) => row.IsSelected == true);
if (selectedRows != null && selectedRows.length > 0) {
this.selectedItems = selectedRows;
}
console.log(this.selectedItems);
}, 300);
}