下拉列表不会在角度js中刷新

时间:2016-04-19 20:56:11

标签: jquery angularjs drop-down-menu

当我选择第一个下拉列表时,我有两个下拉列表,我的第二个下拉列表应根据选择加载。我在角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中的值。

2 个答案:

答案 0 :(得分:0)

就我所知,你在这个范围内不存在的变量上有一个观察者。从您显示的代码中未定义$ scope.ddlDepartment。

答案 1 :(得分:0)

您的问题可能是当您重新分配$ scope.Providers时,您会忘记对“提供商”的引用。试试这个:

                    $scope.$apply(function () {
                        angular.copy(data, $scope.Providers);
                    });