Angular 2中的动态下拉问题

时间:2017-10-06 15:09:50

标签: angular angular2-template

我试图从表td中的动态下拉列表中选择所选的'选项',其中tr迭代18次。将ngModel置于'Select'会导致所有行使用相同的选择!如何使用ngModel将每个独立的数据发送到ts文件?

HTML:

<tr class="row header" *ngFor = "let par of Course; let i=index" >
<td class="col">{{i +1}}</td>
<td class="col1">{{par.Index}}</td>
<td class="col">{{par.Par}}</td>
<td class="col2">{{getPoints(par)}}</td>
<td class="col">{{getShots(par)}}</td>
<td class="col3" ><select [(ngModel)]="sel" (change)="onChangeScore(sel)">
<option  *ngFor= "let s of items" >{{s}}</option></select></td>
</tr>

1 个答案:

答案 0 :(得分:0)

您正在迭代X个元素,但每个sel使用相同的变量par。我建议您将选择分配给par,这样您就可以轻松地从Course数组中获取它。为此,请替换为:

<select [(ngModel)]="sel" (change)="onChangeScore(sel)">

到此:

<select [(ngModel)]="par.sel" (change)="onChangeScore(par.sel)">

然后在您的ts文件中,您可以通过以下方式轻松访问它:

onChangeScore(selection) {
    console.log(selection);
}

很高兴我能帮忙