Javascript &引用;粘的;在Angular应用程序中选择
我有一个恼人的问题,应用程序有一个基于角度的前端。某个选择框是“粘滞的”-您必须选择一个选项两次才能更改它。这里有一个片段再现了这个问题:Javascript &引用;粘的;在Angular应用程序中选择,javascript,angularjs,angularjs-ng-repeat,Javascript,Angularjs,Angularjs Ng Repeat,我有一个恼人的问题,应用程序有一个基于角度的前端。某个选择框是“粘滞的”-您必须选择一个选项两次才能更改它。这里有一个片段再现了这个问题: var-app=angular.module('myapp',[]); app.controller('NewsCtrl',函数($scope){ //设置新闻数据 $scope.news={ _经销商的具体_:'003' }; //找经销商 $scope.dealers=[{ id:1, dealerid:'001', 名称:“沃尔沃” }, { id
var-app=angular.module('myapp',[]);
app.controller('NewsCtrl',函数($scope){
//设置新闻数据
$scope.news={
_经销商的具体_:'003'
};
//找经销商
$scope.dealers=[{
id:1,
dealerid:'001',
名称:“沃尔沃”
}, {
id:2,
dealerid:'002',
名称:“萨博”
}, {
id:3,
dealerid:'003',
姓名:'座位'
}];
});
全部的
{{dealer.name}
您不需要使用ng selected
来选择您的选项,ng model
会为您这样做
这导致模型变得混乱。这就是为什么你必须选择它两次
<select name="specific_for_dealership" ng-model="news.specific_for_dealership">
<option value="">All</option>
<option ng-repeat="dealer in dealers" value="{{ dealer.dealerid }}">{{ dealer.name }}</option>
</select>
全部的
{{dealer.name}
我个人推荐的另一个方法是切换到ng选项以显示对象中的选项列表。它会给你更多的变通能力。例如,可以将整个对象绑定到选择器,而不仅仅是ID
<select name="specific_for_dealership"
ng-options="dealer.dealerid as dealer.name for dealer in dealers"
ng-model="news.specific_for_dealership">
<option value="">All</option>
</select>
全部的
只需设置ng selected=“dealer.dealerid==news.specific\u for\u经销商”
@MatthewDaly查看关于ng options
的第二部分,它工作得更好,并将选择将模型设置为更好的值。是的,它工作得很好,因此我也应用了这些更改