我有 items
作为我的 json 对象,其中包含一些我想在下拉列表中显示的数据。
但它仍然显示我的下拉列表为空白。
这里我使用的是 ng-repeat。
I have listed my code here.
HTML:
<div ng-controller="Ctrl">
<div ng-repeat="item in items">
<select ng-model="item.shareToOption" ng-options="c.value for c in shareToOptions"></select>
</div>
<div>
JS:
var app = angular.module('app', []);
function Ctrl($scope) {
$scope.items = [
{
"shareToOption" : {id:1,value:"AA1"}
},
{
"shareToOption" : {id:2,value:"AA2"},
},
{
"shareToOption" : {id:3,value:"AA3"},
},
{
"shareToOption" : {id:4,value:"AA4"}
}
];
$scope.shareToOptions = [
{id:1,value:"AA1"},
{id:2,value:"AA2"},
{id:3,value:"AA3"},
{id:4,value:"AA4"},
{id:4,value:"AA5"},
{id:4,value:"AA6"},
{id:4,value:"AA7"}
];
}
最佳答案
您应该为 ng-options
使用新的 track by
表达式。像这样的事情:
<div ng-controller="Ctrl">
<div ng-repeat="item in items">
<select
ng-model="item.shareToOption"
ng-options="c.value for c in shareToOptions track by c.id"
></select>
</div>
<div>
确保您使用的是 Angular 1.2。
关于javascript - 无法在 angularjs 中加载下拉列表的 ng-model,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22373274/