检查是否已选中所有复选框

时间:2017-10-15 18:15:30

标签: angular ionic2

如果我有一个如下所示填充的动态复选框,我如何检查是否选中了所有复选框,以便我可以禁用/启用按钮,具体取决于是否所有选中。

我正在使用Angular 2+

public void slp(JLabel label) {
    new Thread(() -> {
        try {
            Thread.sleep(1000);
        } catch (InterruptedException e) {
            e.printStackTrace();
        }
        SwingUtilities.invokeLater(() -> label.setVisible(false));
    }).start();
}

1 个答案:

答案 0 :(得分:0)

你可以做的是向你的filters数组引入一个布尔值,然后将其分配给你的双向绑定,并在更改时检查是否选中了所有复选框并切换按钮的另一个布尔标志:

你的阵列:

filters = [{value:'val1',isChecked:false}, {value:'val2', isChecked:false}]

模板:

<ion-item *ngFor="let field of filters">
  <ion-checkbox (click)="check()" [(ngModel)]="field.isChecked">
    {{field.value}}
  </ion-checkbox>
</ion-item>
<button ion-button [disabled]="!allChecked">Button</button>

然后点击事件:

check() {
  this.allChecked = this.filters.every(x => x.isChecked === true)
}

DEMO: https://plnkr.co/edit/sVwz5OjL559x7eUlGK0c?p=preview