我有以下选择:
<div class="form-group">
<label class="col-md-4 control-label" for="activity">Activity</label>
<div class="col-md-4">
<select id="activity" name="activity" class="inputsvalues" ng-model="activitymodel.deptid" ng-change="getUsers(activitymodel.deptid)" ng-options="activity.DepartmentId as activity.ActivityDescription for activity in activities"></select>
</div>
</div>
控制器代码:
$scope.getUsers = function (id) {
$http({
method: 'GET',
url: 'api/User/GetUsers/' + id,
}).success(function (data, status, header) {
$scope.users = data;
}).error(function (data, status, headers, config) {
$scope.status = status + ' ' + headers;
});
}
问题是ng-change函数在第一次选择时被触发。第二次,它没有击中控制器。这可能有什么问题?
答案 0 :(得分:1)
这是因为..代码ng-model的..对于下拉列表中的每个值都是相同的。为每个选项制作独特的ng-model。使用$ index来实现这一点作为解决方案之一。