checkbox - Angular2,如果没有选中复选框则禁用按钮

标签 checkbox angular

我有多个复选框和一个只有在至少选中一个复选框时才必须启用的按钮

<input type="checkbox">VALUE1
<input type="checkbox">VALUE2
<input type="checkbox">VALUE3
<input type="checkbox">VALUE4
<button>Proceed</button>

这是如何使用 Angular2 实现的。

P.S:发现了类似的问题,但没有使用 Angular2。

最佳答案

一种方法是在每个复选框上使用 ngModel,然后通过检查每个复选框模型状态的方法控制按钮的 disabled 属性:

@Component({
  template: `
    <label *ngFor="let cb of checkboxes">
      <input type="checkbox" [(ngModel)]="cb.state">{{cb.label}}
    </label>
    <p><button [disabled]="buttonState()">button</button>
  `
})
class App {
  checkboxes = [{label: 'one'},{label: 'two'}];
  constructor() {}
  buttonState() {
    return !this.checkboxes.some(_ => _.state);
  }
}

Plunker

关于checkbox - Angular2,如果没有选中复选框则禁用按钮,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34140847/

相关文章:

html - 如何将动态数据绑定(bind)到 aria-label?

css - 增加 IE 11 中的复选框大小

javascript - Angular 5 自定义错误处理程序 : Display Error-message

javascript - 带复选框的样式下拉菜单

javascript - 使用复选框 ul (jQuery) 复制选择元素

angular - 立即取消订阅 RxJS Observable

angular - Angular2 的查询生成器

Angular2 ngif 仅显示事件状态数据

xaml - mvvm 中的 3 状态复选框绑定(bind),无法设置空状态

jquery - 无法在复选框检查时触发 jquery 函数