我想在下拉列表中设置选定的选项。
我有两种将数据传递到选择 ng-model 的方法
first: $scope.selectedTeam = $scope.teams[31];
second: $scope.selectedTeam = selectedTeamSrvs.getTeam()
我的 html 选择如下所示:
<select ng-model="selectedTeam"
ng-options="team as team.name for team in teams | orderBy:'ID'">
</select>
和 JSON.stringify($scope.teams[31]) === JSON.stringify(selectedTeamSrvs.getTeam())
给出 true。
那么为什么只有第一个选项正确设置了所选选项?
最佳答案
By default, ngModel compares by reference, not value.This is important when binding to an array of objects
第二个选项设置不正确,因为 selectedTeamSrvs.getTeam() 返回不同的团队实例,即使它们在字符串化时相等。
关于javascript - 在 Angular ngOptions 中选择时设置所选选项,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29878457/