Я уже пробовал следовать примеру других ответов отсюда, и мне это не удалось!
Я создал реактивную форму (т. Е. Динамическую) и хочу в любой момент отключить некоторые поля. Мой код формы:
this.form = this._fb.group({
name: ['', Validators.required],
options: this._fb.array([])
});
const control = <FormArray>this.form.controls['options'];
control.push(this._fb.group({
value: ['']
}));
мой html:
<div class='row' formArrayName="options">
<div *ngFor="let opt of form.controls.options.controls; let i=index">
<div [formGroupName]="i">
<select formArrayName="value">
<option></option>
<option>{{ opt.controls.value }}</option>
</select>
</div>
</div>
</div>
Я сократил код для облегчения. Я хочу отключить поле выбора типа. Я пытался сделать следующее:
form = new FormGroup({
first: new FormControl({value: '', disabled: true}, Validators.required),
});
не работает! Есть ли у кого-нибудь предложения?
value
это не formArray, это formControlName. Если вы хотите value
быть formArray, вам придется его изменить. В настоящее время это formControlName. Поэтому, если вы хотите, чтобы все поле выбора было отключено, просто измените его <select formArrayName="value">
на<select formControlName="value">
first
? `:)