2016-03-13 39 views
21

我有角2角2 ngModelChange選擇選項,抓住一個特定的屬性

目前下拉選擇表單:當我選擇一個選項option name被傳遞到我的onChange功能$event

通緝:當我選擇一個選項時,我想將workout.id傳遞到我的onChange函數中。

我該如何做到這一點?

<select class="form-control" [ngModel]="selectedWorkout" (ngModelChange)="onChange($event)"> 
    <option *ngFor="#workout of workouts">{{workout.name}}</option> 
</select> 

Controller

onChange(value){ 
    alert(JSON.stringify(value)); 
} 

回答

54
<select class="form-control" [ngModel]="selectedWorkout" (ngModelChange)="onChange($event)"> 
    <option *ngFor="#workout of workouts" [value]="workout.id">{{workout.name}}</option> 
</select> 

OR

<select class="form-control" [(ngModel)]="selectedWorkout" (change)="onChange($event.target.value)"> 
    <option *ngFor="#workout of workouts" [value]="workout.id" >{{workout.name}}</option> 
</select> 

check this

+0

謝謝,這正是我一直在尋找的! –

+1

哦!好,它幫助你... – micronyks

1

你也可以使用[ngValue]裏面的選項:

<select class="form-control" [ngModel]="selectedWorkout" (ngModelChange)="onChange($event)"> 
    <option *ngFor="#workout of workouts" [ngValue]="workout">{{workout.name}}</option> 
</select>