使用ng-repeat在表中填充数据

时间:2016-01-08 07:22:10

标签: angularjs

我从数据库获取数据,数据来自数据库并显示在警报中但未显示使用ng-repeat的表。 这是我的代码:

表格代码:

<table class="table table-hover table-bordered">
                                 <tr>
                                    <th>Doctor Id</th>
                                    <th>Name</th>
                                    <th>Specialization</th>
                                 </tr>
                                  <tr ng-repeat="doctor in doctorList" class="success">
                                    <td> {{doctor.userId}} </td>
                                    <td>{{doctor.name}}</td>
                                    <td>{{doctor.specialization}}</td>
                                  </tr>
                            </table> 

按钮单击代码:

 <div class="controls" ng-controller="searchController">
                                <a  class="btn btn-success " ng-click="searchDoctor()"> Search Doctor  </a>
                            </div>

控制器代码:

var myApp=angular.module('myApp',[]);
myApp.controller('searchController',['$scope','$http',function($scope,$http) {
$scope.searchDoctor = function(){
    alert("search");
    $http.get('http://localhost:8080/Webapp/webapi/doctor/'+$scope.spec).success(function(data){

        var doctorList = [];
        for(j=0; j<data.length; j++){
            alert(data[j].homeNumber);
            doctorList.push({
                "specialization" : data[j].specialization,
                "userId":  data[j].userId,
                "name":  data[j].firstName
            })
            }
        alert(doctorList[0].name);
        $scope.doctorList = doctorList;
    });
}

}]);

列表已设置我在警报中获取值但未在表格中显示。任何人都可以帮助我做错了什么,我将感激不尽:)

2 个答案:

答案 0 :(得分:2)

我猜你的桌子的范围是错误的。

该表应位于ng-controller="searchController" div。

答案 1 :(得分:0)

你有两个像DoctorsControllerSearchController这样的兄弟姐妹的角度控制器,你的html结构是这样的吗?

<div ng-controller="DoctorsController">
    <table class="table table-hover table-bordered">
     ...
     </table> 
</div>
<div ng-controller="SearchController">
    ...
<div>

在这种情况下,您的列表不会更新是正常的,因为有2个不同的范围。也许发布你的html结构也是一个好主意,包括角度控制器。