Angular: Empty Fiddle
http://angularjs.org/
HTML
<script src="http://code.angularjs.org/angular-1.0.1.js"></script>
<div ng-controller="MyCtrl">
<div ng-repeat="item in items | paginate: currentPage : pageSize">
{{item}}
</div>
<input type="number" ng-model="currentPage" />
</div>
JavaScript
var myApp = angular.module('myApp', []);
//myApp.directive('myDirective', function() {});
//myApp.factory('myService', function() {});
function MyCtrl($scope) {
$scope.currentPage = 1;
$scope.pageSize = 10;
$scope.items = [];
for (var iterator = 1; iterator <= 35; iterator++) {
$scope.items.push("Data-" + iterator);
}
$scope.numberOfPages = function() {
return parseInt($scope.items.length / $scope.pageSize);
}
}
myApp.filter('paginate', function() {
return function(items, page, pageSize) {
if (items === undefined || items === null)
return [];
if (pageSize === undefined || pageSize === null || pageSize < 0 || pageSize >= items.length)
return items;
var filtered = [];
page = page - 1;
console.log(page * pageSize + " " + parseInt((page * pageSize) + pageSize));
filtered = items.slice(page * pageSize, parseInt((page * pageSize) + pageSize));
return filtered;
}
});