当我选择第一个下拉列表时,我有两个下拉列表,我的第二个下拉列表应根据选择加载。我在角js做它。使用观察事件来加载下拉事件
angular.module('myApp', ['']).controller('QMesaures', function ($scope) {
$scope.$watch('ddlDepartment', function (newVal) {
var DepartmentName = newVal.DepartmentName
$.ajax({
type: "POST",
data: JSON.stringify({ DepartmentName: DepartmentName }),
url: "/QReport/GetProviders",
contentType: "application/json; charset=utf-8",
success: function (data) {
alert(data);
$scope.$apply(function () {
$scope.Providers = data;
});
}
});
});
});
<div ng-app="myApp" ng-controller="QMesaures">
<select ng-model="ddlProviders" ng-options="provider.ProviderName for provider in Providers"></select>
</div>
但我的问题是我得到的数据我能看到警报框,但我的第二个下拉列表(提供商下拉列表)没有显示价值。
请帮我刷新下拉列表以显示角度js中的值。
答案 0 :(得分:0)
就我所知,你在这个范围内不存在的变量上有一个观察者。从您显示的代码中未定义$ scope.ddlDepartment。
答案 1 :(得分:0)
您的问题可能是当您重新分配$ scope.Providers时,您会忘记对“提供商”的引用。试试这个:
$scope.$apply(function () {
angular.copy(data, $scope.Providers);
});