级联下拉列表angularjs mvc

时间:2018-02-10 12:23:48

标签: asp.net angularjs model-view-controller .net-core

我得到空值

 $scope.GetDepartment = function (Department) {
        $http.get('/Official/GetDepartment?Department=' + Department).then(function (data) {
            console.log(data);
            $scope.department= data.data;
        });
    };

HTML

  <select ng-model="empModel.division" id="" name="Division" class="form-control"   
                                ng-click = "GetDepartment(empModel.division)"  
                                ng-change = "GetDepartment(empModel.division)"
                                ng-options="c.division as c.division for c in division" >
                            <option selected="selected">Select</option>
                        </select>

 <select ng-model="empModel.department" id="" name="Department" class="form-control"
                                    ng-options="d.department as d.department for d in department">
                                <option></option>
                            </select>

当我选择divison时,我没有得到任何部门下拉菜单 控制器

  public JsonResult GetDepartment(string Department)
    {
        var department = db.Depts.Where(x => x.Department == Department).
            GroupBy(x => x.Department).
            Select(x => x.FirstOrDefault()).
            OrderBy(x => x.Department).ToList();

        return Json(department);
    }

1 个答案:

答案 0 :(得分:1)

检索分割数据的角度部分

    function GetDesignation(input) {
        $http.get('/Official/GetDesignation?designation='+input).then(function (data) {
            console.log(data);
            $scope.designation = data.data;
        });

    };

使用ng-change指令更改HTML

  <select ng-model="empModel.division" id="" name="Division" class="form-control" ng-change = "GetDesignation(empModel.division)"
                                    ng-options="c.division as c.division for c in division" >
                                <option></option>
                            </select>

下拉列表中的加载指定数据的新HTML标记

  <select ng-model="empModel.designation" id="" name="Designation" class="form-control" 
                                    ng-options="c.designation as c.designation for c in designation" >
                                <option></option>
                            </select>