AngularJS - select的默认值(id字段以不同方式命名)

时间:2015-08-20 22:29:13

标签: angularjs angularjs-ng-repeat angularjs-service

我有以下数据(从Angular服务提供,存储在控制器中)我需要用来填充下拉列表,并选择默认值。页面呈现时,第一个下拉选项为"?",默认情况下处于选中状态。第二个下拉选项是“名称1”。

我已经读过并试过不同的东西,所以我想知道这是否导致track by基于具有不同名称的id字段(id vs. otherId)?有什么想法吗?

下拉列表:

{"someDataSet":
  [
    {"id": "1", "name": "Name 1"},
    {"id": "2", "name": "Name 2"}
  ]
}

用于选择默认值:

{"otherDataSet":
  {"otherId": "1", "otherName": "Name 1"}
}

我的前端代码:

<select ng-options="someData.name for someData in controller.someDataSet
track by someData.id" ng-model="controller.otherDataSet.otherId"/>

谢谢!

1 个答案:

答案 0 :(得分:1)

检查此解决方案:http://codepen.io/tzach/pen/LVKeGJ

添加选项元素将设置默认值,直到加载实际数据:

<option value="{{ controller.otherDataSet.otherId }}">{{ controller.otherDataSet.otherName }}</option>