从选择 Angular 8.2 中获取值.( 表单生成器 )



我想取我在 Angular 8.2 中选择的"id">

<select (change)='changeProvider($event)' class="form-control" id="field_provider"
name="provider" formControlName="providerId">
<option [ngValue]="providerOption.id"
*ngFor="let providerOption of providers; trackBy: trackById">
{{ providerOption.indentifier }}
</option>
</select>

//控制器

changeProvider(event$: any): void {
event$.target.value <-- "1: 5e450f7aa2aa82760cee469c"

我在开头添加了"1:">

"1: 5e450f7aa2aa82760cee469c">

而不是"5e450f7aa2aa82760cee469c">

我不知道这是我缺少的选项还是什么。

因为我不认为必须从字符串中删除"1:"才能使其为我工作非常优雅

我认为你应该使用值:

<select (change)='changeProvider($event)' class="form-control" id="field_provider"
name="provider" formControlName="providerId">
<option *ngFor="let providerOption of providers; [value]="providerOption.id" trackBy: trackById">
{{ providerOption.indentifier }}
</option>
</select>

如果你想要 Selected Id,你可以将其绑定到变量 在 TS 中

selectedprovider = "";
changeProvider(): void {
alert(this.selectedprovider);
}

在 HTML 中添加 [(ngModel(]="selectedprovider">

<select (change)='changeProvider()'  id="field_provider"
#provider="ngModel"  name="provider" [(ngModel)]="selectedprovider">
<option [ngValue]="providerOption.id"
*ngFor="let providerOption of providers; trackBy: trackById">
{{ providerOption.indentifier }}
</option>
</select>

最新更新