我有这个架构:
teams: [
{
id: 1,
name: "Spain"
},
{
id: 2,
name: "Germany"
}
]
现在我有了这个选择元素:
<select ng-model="betSchema.winnerId" ng-options="team.name for team in teams track by team.id">
<option value="-1">Tie</option>
</select>
betSchema
对象看起来像这样(默认情况下):
{
winnerId: -1
}
以下是我看到的结果:
问题是:
1.我看不到领带选项,并且有一个神秘的“空白”选项(第一个位于顶部)。
2.当betSchema
看起来像这样:
{
winnerId: 2
}
我期待看到德国选项被选中。
我做错了什么?
答案 0 :(得分:1)
看到这个小提琴:http://jsfiddle.net/Mn4SH/4/
有几件事。
使用ng-options时,Angular会覆盖您的选项标签,因此您必须将其添加到模型中,如下所示:
scope.teams = [{
id: -1,
name: "Tie"
},
{
id: 1,
name: "Spain"
},
{
id: 2,
name: "Germany",
}];