我想用ngOptions创建一个select元素 - 到目前为止一直很好:
<select ng-options="currency for (code, currency) in currencies track by code"
ng-model="something.currency"></select>
现在我想通过对象键跟踪选项(因此ng-model
的值应该是键而不是对象的值)。这有可能以某种简单的方式和方式吗?
答案 0 :(得分:2)
这是你在找什么?
var myApp = angular.module('myApp',[]);
myApp.controller('GreetingController', ['$scope', function($scope) {
$scope.currencies_old = [
{code: "USD", curr: "$"},
{code: "IND", curr: "INR"}
];
$scope.currencies = {"USD": "USDollars", "EUR": "Euro"};
}]);
&#13;
<script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.2.23/angular.min.js"></script>
<div ng-app="myApp" ng-controller="GreetingController">
<select ng-model="item" ng-options="key as value for (key , value) in currencies"></select>
Code: {{item}}
<br/> <br/>
<select ng-options="item as item.curr for item in currencies_old track by item.code" ng-model="item_old"></select>
Code: {{item_old.code}}
</div>
&#13;