<!DOCTYPE html>
<html>
<head>
<link rel="stylesheet" href="//cdn.datatables.net/1.10.1/css/jquery.dataTables.css" />
</head>
<body ng-app="datatablesSampleApp">
<div ng-controller="sampleCtrl">
Related to: <a href="https://stackoverflow.com/q/32961172/1407478" target=_blamk>
stackoverflow.com/questions/32961172/angular-store-data-and-reload-datatable
</a>
<br><br>
<button ng-click="reloadData();">reload</button>
<table datatable
dt-options="dtOptions"
dt-instance="dtInstance"
dt-columns="dtColumns">
</table>
</div>
<script data-require="jquery@1.10.1" data-semver="1.10.1" src="http://code.jquery.com/jquery-1.10.1.min.js"></script>
<script src="//cdn.datatables.net/1.10.1/js/jquery.dataTables.js"></script>
<script src="//cdnjs.cloudflare.com/ajax/libs/q.js/0.9.2/q.js"></script>
<script data-require="angular.js@1.2.15" data-semver="1.2.15" src="http://code.angularjs.org/1.2.15/angular.js"></script>
<script src="https://rawgithub.com/l-lin/angular-datatables/v0.6.1/dist/angular-datatables.js"></script>
<script src="script.js"></script>
</body>
</html>
(function(angular) {
'use strict';
angular.module('datatablesSampleApp', ['datatables']).
controller('sampleCtrl', function($scope, DTOptionsBuilder, DTColumnBuilder, DTColumnDefBuilder) {
$scope.dtColumns = [
DTColumnBuilder.newColumn('id').withTitle('id'),
DTColumnBuilder.newColumn('name').withTitle('name'),
DTColumnBuilder.newColumn('count').withTitle('count')
];
$scope.dtInstance = {};
$scope.dtOptions = DTOptionsBuilder
.fromSource('data.json')
$scope.reloadData = function() {
$scope.dtInstance._renderer.rerender();
}
});
})(angular);
[
{
"id": 1,
"name" : "abc",
"count": "(20)"
},
{
"id": 2,
"name" : "abc2",
"count": "20"
},
{
"id": 3,
"name" : "abc3",
"count": "(30)"
},
{
"id": 4,
"name" : "xyz",
"count": "(5)"
}
]