Javascript AngularJS出现问题,选择绑定未加载默认值

Javascript AngularJS出现问题,选择绑定未加载默认值,javascript,angularjs,data-binding,Javascript,Angularjs,Data Binding,我在输入和绑定AngluarJS时遇到问题。我已经在Plunker上创建了一个最小工作示例: 基本问题如下:下拉列表中的值永远不会与我的模型中的值一起预先选择 此外,在Angular 1.1.5中,ng选项似乎未在生成的标签上包含标签,因此当您更改选择时,下拉控件不会记录任何更改。两个问题: 比较字符串与字符串 在同一表达式中使用“选择为”和“跟踪方式”时要小心。 JS HTML 但这是行不通的: <select ng-options="item.subItem as item.

我在输入和绑定AngluarJS时遇到问题。我已经在Plunker上创建了一个最小工作示例:

基本问题如下:下拉列表中的值永远不会与我的模型中的值一起预先选择

此外,在Angular 1.1.5中,ng选项似乎未在生成的标签上包含标签,因此当您更改选择时,下拉控件不会记录任何更改。

两个问题:

比较字符串与字符串 在同一表达式中使用“选择为”和“跟踪方式”时要小心。 JS

HTML

但这是行不通的:

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

-根据OP的要求,添加评论作为答案


如果按如下所示从ng选项中删除“track by option.id”,则应根据您的模型进行预选择

<select name="mySelect" id="mySelect"
      ng-options="option.id as option.name for option in data.availableOptions"
      ng-model="data.selectedOption"></select>

查看修改后的Plunker:

如果您从ng选项中删除了track by option.id,它应该根据您的型号进行预选。我有改良的普朗克:是的,我试过了,我什么都没有…@VivekN似乎已经解决了我的问题。非常感谢你。把它贴出来作为答案,这样我就可以接受了。
<select 
    ng-options="item as item.label for item in items track by item.id"
    ng-model="selected">
</select>
<select 
    ng-options="item.subItem as item.label for item in items track by item.id"
    ng-model="selected">
</select>
<select name="mySelect" id="mySelect"
      ng-options="option.id as option.name for option in data.availableOptions"
      ng-model="data.selectedOption"></select>