我有一个范围对象,其中包含通过下拉列表选择的可能评级:
$scope.ratings = [{ id: 1, name: "Good", value: 9}, { id: 2, name: "Bad", value: 1 }];
我评级的对象如下:
$scope.obj = [
{
id: "fff",
rating: {
id: 1,
name: "Good",
value: 9
}
];
这是我的标记:
<div ng-show="rating=false">{{ obj.rating.name }}</div>
<select ng-show="rating"
ng-change="rate(obj); rating=false;"
ng-model="obj.rating"
ng-options="rating.name for rating in ratings">
</select>
我的问题是,在最初呈现下拉列表时,没有选择任何值。在下拉列表中选择一个值后,该值会保持不变。如果再次显示,它会显示在<div>
以及下拉列表中。
如何预先选择obj.rating
中的值?它在<div>
中正确显示,但未在下拉列表中显示。
答案 0 :(得分:0)
我刚刚在referenced thread:
中找到了解决方案 ng-options="rating.name for rating in ratings track by rating.id">