我有以下用于选择标签的html代码。
<option ng-repeat="option in AllData" value="{{item.Id}}" ng-selected="data.Symbol==item.Id">{{item.Symbol}}</option>
我想将其转换为ng选项。 有人可以对此有所了解吗?
所有数据的值如下。它是一个对象的数组。
0:Object
Id: 1
Symbol: "GR"
1:Object
Id: 2
Symbol: "DR"
我尝试过这样的事情,但没有成功。
ng-options="item as item .Symbol for item in AllData track by item.Id">
试试这个
<select ng-options="option as option.Symbol for option in AllData">
</select>
使用 ngOptions
时,还必须将 ng-model
与初始值 select
绑定。提到,既然你使用了 track by item.Id
,默认值至少应该包含属性Id
,并且满足属性Id
项之一。请参阅以下示例:
angular.module("app", [])
.controller("myCtrl", function($scope) {
$scope.AllData = [{
0: Object,
Id: 1,
Symbol: "GR"
}, {
1: Object,
Id: 2,
Symbol: "DR"
}];
//$scope.data = $scope.AllData[0];
$scope.data = {
0: Object,
Id: 1,
Symbol: "GR"
};
});
<script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.6.4/angular.min.js"></script>
<div ng-app="app" ng-controller="myCtrl">
<select ng-model="data" ng-options="item as item.Symbol for item in AllData track by item.Id"></select> {{selectedItem}}
</div>