gpt4 book ai didi

Angular 4 : Disabling nested form validators

转载 作者:太空狗 更新时间:2023-10-29 18:13:01 26 4
gpt4 key购买 nike

我想禁用“addressLine1”验证器;我怎样才能禁用它?看到它嵌套在“地址”元素中

 this.form = fb.group({           
'region': [null, Validators.required],

'address': fb.group({
'addressLine1': ["", Validators.required],
'addressLine2': [""],
'city': ["", Validators.required]
}),

})

我在下面试过了,但是没有用

 this.form.controls["address"]["addressLine1"] .disable();

谢谢

这是 html:

<form [formGroup]="form">

<div ><label><span class="required">*</span>State/Province/Region<br><input class="form-control" pInputText formControlName="addressLine1" [(ngModel)]="selected.address.addressLine1" required></label></div>

</form>

最佳答案

正确的语法应该是:

(this.form.controls["address"] as FormGroup).controls["addressLine1"].disable({});

甚至更好

this.form.get('address.addressLine1').disable();

Stackblitz example

更新

要禁用验证器,请使用以下代码:

const control = this.form.get('address.addressLine1');
control.setValidators(null);
control.updateValueAndValidity();

Stackblitz Example

关于 Angular 4 : Disabling nested form validators,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47106562/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com