问题
I tried to initialize my new FormControl using form state object and I noticed then this control doesn't influence my form validation and it also disappear from FormGroup values.
this.userForm = new FormGroup({
email: new FormControl('', Validators.required),
firstName: new FormControl('',Validators.required),
lastName: new FormControl('',Validators.required),
role: new FormControl({value: 'MyValues', disabled: true},Validators.required),
})
Now if I try to do:
this.userForm.value //email, firstName, lastName
Have someone encountered this issue ? Any solution ? Angular version: 5.2.6
回答1:
This is not an issue, is the expected behavior. If you'd like to include all values regardless of disabled status, use the following:
this.userForm.getRawValue()
回答2:
Thank you @jota-toledo for getting me 80% what I needed.
For those of you looking for a solution to the same problem but for nested forms I was able to solve by changing my usual
this.userForm.get('nestedForm').value
to
this.userForm.getRawValue().nestedForm
来源:https://stackoverflow.com/questions/49675329/how-to-get-values-from-disabled-form-controls-in-a-form-group