我有一个角反应形式,除了许多其他控件外,我还有两个我无法获得onSubmit()的值。
请参阅Val1和Val2:
buildForm() {
this.createRequestForm = this.form.group({
Name: ['', [Validators.required, CustomValidatorService.validateCharacters]],
Comments: ['', [CustomValidatorService.validateCharacters]],
…
Val1: [{ value: '', disabled: true }],
Val2: [{ value: '', disabled: true }],
HTML:
<input name="Val1" matInput formControlName="Val1" placeholder="Val 1" [value]="valModel?.val1">
...与val2相同。
这是我填充val1和val2的方式
this.createRequestForm.get('Name').valueChanges
.subscribe(value => {
if (value && value.length === 6) {
this.commonHttpService.getValDetails(value)
.subscribe(valModel => this.valModel = valModel);
}
});
如您所见,val1和val2的值来自http调用,该调用将结果绑定到this.valModel,然后它自动填充表单。
一切正常,值填充在屏幕上,但是当我尝试使用
提交表单时.getRawValue()
它显示val1 =“”,与val2相同...
我想这是将这些值绑定到控件的方法吗?
有什么主意吗?
答案 0 :(得分:1)
尝试
this.createRequestForm.value.val1
获取createRequestForm(表单)字段的值