我发现有很多与此类似的问题,但我找不到任何完全需要我所拥有的问题:
- ngRepeat 在选项标签内
- 选择标签内的 ngChange
我需要获取所选选项的索引。这是我的代码
<select data-placeholder="Choose" ng-model="pp.sif" name="myname" ng-change="onChangeSifra()">
<option ng-repeat="item in sif.what track by $index" value="{{item.SIF}}">
{{item.LABEL}}
</option>
</select>
ngClick inside option-tag 不适用于 Chrome 和 IE,因此这不是一个选项。
ngOption(在 select-tag 中)而不是 ngRepeat(在 option-tag 中)不是一个选项,因为 sif.what 是一个对象数组;另外,这就是为什么我不能使用indexOf函数(ngModel只有这个对象的一部分)。
有任何想法吗?
编辑:
由于很多人告诉我切换到 ngOption,让我更清楚地说明为什么这不是一个选项。
我迭代这样的事情:
$scope.sif.what = [
{SIF: 1, LABEL: "label 1", SAVED: "save me 1"},
{SIF: 2, LABEL: "label 2", SAVED: "save me 2"},
{SIF: 3, LABEL: "label 3", SAVED: "save me 3"},
]
因此,在组合框中,我将“label”作为标签,“sif”作为值,ngModel 是“sif”的值,但在 ngChange 上我需要整个对象、sif.what(index) 或 $index。
Thanks.