我通过调用 api 来填充选择下拉菜单。当用户从选择菜单中选择一个选项时,我希望触发第二个功能 - $scope.getRoles()
. 然而,这是立即开火。任何想法为什么会发生这种情况?请在下面查看我尝试的代码。
html
<select>
<option ng-change="getRoles()" ng-repeat="country in countries">{{ country.countryCode }}</option>
</select>
有角度的
app.controller("jobsCtrl", function($scope, careerData) {
//get list of countries when app loads
careerData.countryList().then(function successCallback(response) {
$scope.countries = response.data;
$scope.countries.unshift({countryCode: "Select a country"});
}, function errorCallback(response) {
console.log(response);
});
$scope.getRoles = careerData.jobByCountry().then(function successCallback(response) {
console.log(response)
}, function errorCallback(response) {
console.log(response);
})
});
app.factory('careerData', ['$http', function($http){
return {
countryList: function() {
return $http({
method: 'GET',
url: 'testUrl'
})
},
jobByCountry: function() {
return $http({
method: 'GET',
url: 'someurl'
})
}
}
}]);