禁用表单数组的表单控件:Angular2

时间:2018-11-13 05:36:01

标签: angular typescript

我创建了一个带有formGroups列表的FormArray。

现在,我正在尝试通过循环FormArray来禁用对每个formGroup的控制。

this.otcDocumentTrackerForm.controls.forEach(s => {
  s.controls["isNotApproved"].disabled();
  s.controls["CREDIT_OR_OPS_REMARKS"].disabled();
});

但是,这对我不起作用。有人可以给我解决方案吗?

2 个答案:

答案 0 :(得分:1)

您可以通过遍历表单数组来禁用表单控件

diableInputs() {
    this.myForm.controls.forEach((group: FormGroup) => {
        let isNotApproved = group.get('isNotApproved') as FormControl;
        isNotApproved.disable()
        let credit = group.get('CREDIT_OR_OPS_REMARKS') as FormControl;
        credit.disable()
    })
}

检查stackblitz以获取完整示例。

答案 1 :(得分:0)

在创建disabling时尝试form control

例如:

isNotApproved: new FormControl({ value: false, disabled: true }, Validators.required)