检查是不是选中了所有复选框

Posted

技术标签:

【中文标题】检查是不是选中了所有复选框【英文标题】:Check if all checkboxes are checked检查是否选中了所有复选框 【发布时间】:2018-03-27 06:31:59 【问题描述】:

如果我有一个如下所示的动态复选框,我如何检查是否选中了所有复选框,以便我可以根据是否全部选中来禁用/启用按钮。

我正在使用 Angular 2+

<ion-item *ngFor="let field of filters">
  <ion-checkbox [(ngModel)]="filters[field]"></ion-checkbox>
</ion-item>

【问题讨论】:

你可以检查所有filters[field]是否为真 你能发布你的filters对象吗? 【参考方案1】:

您可以做的是向您的 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)

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

【讨论】:

以上是关于检查是不是选中了所有复选框的主要内容,如果未能解决你的问题,请参考以下文章

如何检查是不是选中了复选框[重复]

如何检查单击时是不是选中了复选框?

检查是不是选中了基于工作表的复选框

Angular Material - 如何检查 selenium java 中是不是选中了复选框?

如何检查复选框是不是被选中?

如何将事件侦听器添加到动态创建的复选框并检查是不是选中了复选框。 JavaScript