Winkel 2 FormBuilder mit Wählen Sie mehrere
Wie Baue ich den FormBuilder richtig auf einem "select multiple"?
Es funktioniert nur ohne mehrere.
Versuchte ich mit FormArray, FormGroupName in HTML, allerdings werden alle Fehler zurückgeben. Und die Beispiele, die ich begegnen, sind immer non-tagged <select multiple>
.
Könnte jemand mich leiten?
Danke.
.TS
this.detailFormGroup = this.fb.group({
"id": [this.item.id],
"name": [this.item.name, [Validators.required]],
"categories": this.item.categories
});
.HTML -
<form [formGroup]="detailFormGroup">
<div>
<input type="text" formControlName="name" />
</div>
<div>
<select formControlName="categories" multiple>
<option *ngFor="let item of categories" [value]="item.id">{{ item.categoryName }}</option>
</select>
</div>
</form>
Was ich brauche, ist, dass, wenn ich das detailFormGroup.Wert erhalte ich das Objekt:
{
id: 1,
name: "name 1",
categories: [
{
id: 5,
categoryName: "name 5"
},
{
id: 10,
categoryName: "name 10"
}
]
}
Und natürlich, wenn ich die item-Objekt das HTML-Steuerelemente sind auch ausgewählt, mit deren Positionen.
Ich bin immer falsch wie diese:
{
id: 1,
name: "name 1",
categories: [ 5, 10 ]
}
Du musst angemeldet sein, um einen Kommentar abzugeben.
Bekommen Sie ein array von ausgewählten Werten. Und in deinem HTML, das wir sehen können
option [value]="item.id"
.Nur ändern
option [value]="item"
.