angular js ng-option 不适用于 select 标签
angular js ng-option not working for select tag
我正在尝试让 ng-option 使用 JSON 格式的数组,但不确定为什么它不显示 select 选项行。例如:
index.js:
$scope.seloptions= [{ key: k1, name: n1 },{ key: k2, name: n2 }];
index.html:
<select name="set_aside" ng-model="set_aside" ng-options="option.key for option in seloptions track by name"></select>
我不知道我做错了什么。 select 标记未被填充。
编辑
还假设 angular 代码的必要设置已经存在,并且两个文件都在同一目录中。
问题是您正在按未定义的名称进行跟踪。
更新行:
ng-options="option.key for option in seloptions track by name"
到
ng-options="option.key for option in seloptions track by option.name"
工作示例:
var app = angular.module('plunker', []);
app.controller('MainCtrl', function($scope) {
$scope.seloptions= [{ key: "key1", name: "n1" },{ key:" key2", name: "n2" }];
});
<script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.2.23/angular.min.js"></script>
<body ng-app="plunker">
<div ng-controller="MainCtrl">
<select name="set_aside" ng-model="set_aside" ng-options="option.key for option in seloptions track by option.name">
<option value="">Select One</option>
</select>
</div>
</body>
我正在尝试让 ng-option 使用 JSON 格式的数组,但不确定为什么它不显示 select 选项行。例如:
index.js:
$scope.seloptions= [{ key: k1, name: n1 },{ key: k2, name: n2 }];
index.html:
<select name="set_aside" ng-model="set_aside" ng-options="option.key for option in seloptions track by name"></select>
我不知道我做错了什么。 select 标记未被填充。
编辑 还假设 angular 代码的必要设置已经存在,并且两个文件都在同一目录中。
问题是您正在按未定义的名称进行跟踪。 更新行:
ng-options="option.key for option in seloptions track by name"
到
ng-options="option.key for option in seloptions track by option.name"
工作示例:
var app = angular.module('plunker', []);
app.controller('MainCtrl', function($scope) {
$scope.seloptions= [{ key: "key1", name: "n1" },{ key:" key2", name: "n2" }];
});
<script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.2.23/angular.min.js"></script>
<body ng-app="plunker">
<div ng-controller="MainCtrl">
<select name="set_aside" ng-model="set_aside" ng-options="option.key for option in seloptions track by option.name">
<option value="">Select One</option>
</select>
</div>
</body>