在 $scope 上设置 ng-options 的选定值
Set selected value of ng-options on $scope
我想 get/set selected 索引 + 范围下拉菜单的偏移量。
所以当我 select 名为 "Third " 的选项时,$scope.selectedIndex
值应该是 3。但它是 obj3
。
这是我到目前为止的想法。我希望 track by
会修复它,但它没有:(
控制器
$scope.foos = [obj1, obj2, obj3]
查看
<select data-ng-model="selectedIndex"
data-ng-options="foo.name for foo in foos track by foos.indexOf(foo) + 1">
<option value=""></option>
</select>
生成的视图(生成的值符合预期)
<select data-ng-model="selectedIndex" data-ng-options="foo.name for foo in foos track by foos.indexOf(foo) + 1">
<option value="" class=""></option>
<option value="1" label="First">First</option>
<option value="2" label="Second">Second</option>
<option value="3" label="Third">Third</option>
</select>
我不会使用数组技巧
ng-options="idx as choice for (idx, choice) in choices"
因为idx需要偏移+1
使用值作为名称语法:
data-ng-options="foos.indexOf(foo) + 1 as foo.name for foo in foos"
我想 get/set selected 索引 + 范围下拉菜单的偏移量。
所以当我 select 名为 "Third " 的选项时,$scope.selectedIndex
值应该是 3。但它是 obj3
。
这是我到目前为止的想法。我希望 track by
会修复它,但它没有:(
控制器
$scope.foos = [obj1, obj2, obj3]
查看
<select data-ng-model="selectedIndex"
data-ng-options="foo.name for foo in foos track by foos.indexOf(foo) + 1">
<option value=""></option>
</select>
生成的视图(生成的值符合预期)
<select data-ng-model="selectedIndex" data-ng-options="foo.name for foo in foos track by foos.indexOf(foo) + 1">
<option value="" class=""></option>
<option value="1" label="First">First</option>
<option value="2" label="Second">Second</option>
<option value="3" label="Third">Third</option>
</select>
我不会使用数组技巧
ng-options="idx as choice for (idx, choice) in choices"
因为idx需要偏移+1
使用值作为名称语法:
data-ng-options="foos.indexOf(foo) + 1 as foo.name for foo in foos"