Ng表没有调用get数据

时间:2015-04-23 17:57:27

标签: javascript jquery angularjs ngtable

我已经得到了实现NG-表Ajax调用,但从来没有从打电话的的GetData函数,该函数onBuscarTable从不打电话,我在debbugger控制台已经外观检查,并这么想的称之为:

我正在做什么事?

这是js:

    $scope.onBuscarTable = function ($defer, params) {
    $.ajax({
        type: 'GET',
        url: '/Home/GetEfficiencyDetails',
        cache: false,
        contentType: 'application/json; charset=utf-8',
        //data: JSON.stringify({ title: "fghfdhgfdgfd" }),
        success: function (data) {
            $scope.items = data;
            $defer.resolve(data);
        }
    });
};

//$scope.getEffiencyDetails();
$scope.tableBuscar = new ngTableParams({
    page: 1, // show first page
    count: $scope.items.length, // hides pager
    sorting: {
        name: 'asc' // initial sorting
    }
}, {
    counts: [], // hides page sizes
    getData: $scope.onBuscarTable

});

$scope.tableBuscar.reload();

这是html:

                            <table ng-table="tableBuscar" show-filter="true" class="table table-striped table-bordered table-condensed table-hover">

                            <tbody>
                                <tr>
                                    <th colspan="5">Battery Life</th>
                                    <th colspan="4">SBC</th>
                                    <th colspan="3">ZBC</th>
                                    <th>Overall</th>
                                </tr>
                                <tr>
                                    <th>Pool #</th>
                                    <th>True Cap.</th>
                                    <th>Util.</th>
                                    <th>Load Sharing</th>

                                </tr>
                                <tr ng-repeat="item in items">
                                    <td>{{item.PoolName}}</td>
                                    <td>{{item.AvgTrueCapacity}}</td>
                                    <td>{{item.AvgEnergyUsageDaily}}</td>  
                                </tr>                                  

                            </tbody>
                        </table>

1 个答案:

答案 0 :(得分:0)

您的代码应使用$http代替$.ajax

$scope.items = [];
$scope.onBuscarTable = function($defer, params) {
    $http.get('/Home/GetEfficiencyDetails').success(function(data) {
        $scope.items = data;
        $defer.resolve(data);
    });
};

//$scope.getEffiencyDetails();
$scope.tableBuscar = new ngTableParams({
    page: 1, // show first page
    count: $scope.items.length, // hides pager
    sorting: {
        name: 'asc' // initial sorting
    }
}, {
    counts: [], // hides page sizes
    getData: $scope.onBuscarTable

});

$scope.tableBuscar.reload();