Ng-table does not trigger data retrieval

I have an ng table with an ajax call, but never call a function from getdata, the onBuscarTable function never calls, I look at the debbugger console to check it and not call it:

what am I doing raging?

here 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();

      

and here is the 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>

      

+3


source to share


1 answer


You should use $http

instead$.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();

      

0


source







All Articles