我有这个表单组:
this.form = fb.group({
'teacher': [''],
'schools': fb.array([
fb.group({
'school_name': [''],
'school_description': [''],
})
})
});
问题是:
如何通过函数以编程方式将新的表单控件(名为school_city
)添加到特定的 *group” ?FormArray
我有这个表单组:
this.form = fb.group({
'teacher': [''],
'schools': fb.array([
fb.group({
'school_name': [''],
'school_description': [''],
})
})
});
问题是:
如何通过函数以编程方式将新的表单控件(名为school_city
)添加到特定的 *group” ?FormArray
要为 内部的每个组添加一些控件FormArray
,您可以执行以下操作:
someFunc() {
const formArr = this.form.get('schools') as FormArray;
for (const group of formArr.controls) {
group.addControl('school_city', this.fb.control(''));
}
}
编辑#1:
正如 OP 现在解释说他想将其添加control
到特定组:
您必须传递要添加的组的索引control
:
someFunc(idx: number) {
const group = this.form.get(`schools.${idx}`) as FormGroup;
group.addControl('school_city', this.fb.control(''));
}