AngularJS如何使用带有对象值的ng-options初始化选择

时间:2016-09-21 15:03:35

标签: javascript angularjs

我想用ng-options初始化一个选择字段。

让我们假设我们有以下项目:

$scope.items = [{
  id: 1,
  label: 'aLabel',
  subItem: { name: 'aSubItem' }
}, {
  id: 2,
  label: 'bLabel',
  subItem: { name: 'bSubItem' }
}];

以下html:

<select ng-options="item as item.label for item in items track by item.id" ng-model="selected"></select>

但现在不是通过以下命令选择选项:

$scope.selected = $scope.items[0];

我没有对象,我只有id的信息,所以我喜欢用类似的东西初始化select:

$scope.selected = $scope.otherRandomObject.id 

我的想法是使用track by item.id以某种方式创建了对象和id之间的关系。

1 个答案:

答案 0 :(得分:0)

如果您想拥有预先选择的值,则可以使用ng-selected

<select ng-options="item as item.label for item in items" ng-selected="$first"></select>

在这种情况下,将选择项目数组中的第一项

希望我回答你的问题