【发布时间】:2015-10-27 09:41:20
【问题描述】:
我在页面上有一些过滤器,我需要将选择元素的值与 GET-param 同步。
<div ng-app="TourSearchApp">
<form ng-controller="SearchFilterCtrl">
<select ng-model="country" ng-options="item.id as item.name for item in countries">
<option value="">Choose country</option>
</select>
</form>
</div>
<script>
var app = angular.module('TourSearchApp', []);
app.controller('SearchFilterCtrl', ['$scope', '$http', '$location', function($scope, $http, $location) {
$http.get('/api/countries/').success(function(data) {
$scope.countries = data;
});
$scope.country = $location.search()['country']; // (1)
$scope.$watch('country', function(newValue) { // (2)
$location.search('country', newValue);
});
}]);
</script>
字符串 (1) 和 (2) 使 $scope.country 和 GET-param country 同步。 一切正常。但是当页面加载一些 GET 参数时,它不适用于 SELECT。 IE。选择元素保持未选中状态。为什么?
【问题讨论】:
标签: javascript angularjs select location ng-options