为简单数组提供带有 ng 选项的模型索引
Put an index to a model with ng-options for a simple array
对于以下代码(请参阅小提琴(:
.HTML:
<div ng-app ng-controller="MyCtrl">
<select ng-model="ampm" ng-options="currOption for currOption in ['AM', 'PM']"></select>
AM/PM: {{ampm}}
</div>
.JS:
function MyCtrl($scope) {
$scope.ampm = "AM";
}
结果是,HTML :
<select ng-model="ampm" ng-options="currOption for currOption in ['AM', 'PM']" class="ng-pristine ng-valid">
<option value="0" selected="selected">AM</option>
<option value="1">PM</option>
</select>
。这完全没问题。但是,'AM'
和'PM'
正在被放入ampm
模型中。是否可以将像 0 或 1 这样的索引放入此模型中?我想要引用数组中位置的整数索引,而不是需要重新计算的该位置的值。
更新
有没有办法避免创建配对数组?
您可以将选择设置为使用元素的索引作为模型。
这使用 Angular 文档中详述的select as label for value in array
ng-options
语法:http://docs.angularjs.org/api/ng.directive:select
我已经更新了jsFiddle:
http://jsfiddle.net/EyBVN/28/
.HTML:
<div ng-app ng-controller="MyCtrl">
<select
ng-model="ampm"
ng-options="options.indexOf(currOption) as currOption for currOption in options"></select>
AM/PM: {{ampm}}
</div>
.JS:
function MyCtrl($scope) {
$scope.options = ['AM', 'PM'];
$scope.ampm = 0;
}
类似的东西?
<div ng-app ng-controller="MyCtrl">
<select ng-model="selectItem" ng-options="currOption as currOption.value for currOption in ampm"></select>
AM/PM: {{selectItem.name}}
</div>
控制器
function MyCtrl($scope) {
$scope.ampm = [{name: "AM",value: "0" },{name: "PM",value: "1" }];
$scope.selectItem = $scope.ampm[0];
}
演示小提琴
相关文章:
- AngularJs列表ng单击以选择选项转换
- 如何使用AngularJs禁用ng选项中的选项
- 如何将ng选项的索引作为angularJs中的值传递给模型
- AngularJS ng选项在选择一个选项后删除了默认的空白值
- 当使用select作为标签时,如何使用ng选项禁用angularjs中的选项
- 角度引导选项卡ng如果错误
- 从服务器获取数据并在选择控件中使用ng选项无法显示选项
- ng选项-用vm替换$scope
- Angularjs-设置不带ng选项的select的默认值
- 角度去抖动(ng模型选项)不起作用
- ng选项-传递键而不是值
- Angular:如何使用ng选项进行四个单独的选择
- 选择框中带有关联的ng模型,选项中带有ng重复
- 使用ng选项,我如何筛选准确解释给定值的内容
- 角度Ng选项错误
- Angular.js通过对象关键点上的ng选项进行跟踪
- 选择/选项 ng-model 未绑定 ng-selected
- Angularjs 选择选项 ng 选择为分配值选择空白选项
- <选项 ng-repeat value={{object}}> 如何强制角度将对象推入模型
- 删除空白选项ng repeat和过滤后的ng选项