在Angular响应式表单中,如果禁用状态的表单元素没有值,这会导致验证失败。为了解决这个问题,你可以使用以下方法之一:
setValue
方法设置表单元素的默认值:this.myForm = this.formBuilder.group({
myField: [{ value: '', disabled: true }, Validators.required]
});
// 设置默认值
this.myForm.get('myField').setValue('default value');
ngModel
指令来绑定表单元素的值:
在组件中设置defaultValue
的值。
这些方法都可以确保禁用状态的表单元素有一个默认值,从而解决无效的禁用元素问题。