小编给大家分享一下angularjs结合pagination插件实现分页功能的示例分析,希望大家阅读完这篇文章之后都有所收获,下面让我们一起去探讨吧!
angularjs与pagination插件可以完美实现前端的分页,筛选,搜索等功能,前提当然需要有后台开发配合,今天我们只说前端实现:
1、引入pagination插件,在angularjs引入之前先加载pagination插件;
2、在定义controller的时候,需要注入pagination插件;
3、分页前端原理基本需要有个默认异步请求,当点击分页,再次请求数据并向后台发送当前页码,如果有搜索数据或者筛选数据功能,在发送请求的同时需要带上与后台开发共同定义的搜索参数;
4、基本模板:
var url = '请求路径';
$http({
method:"post",
url:url
}).success(function(_data) {
$scope.contentlist = _.data.items;//数据列表
$scope.pageparameters = _data.data;
$scope.Searchparameters = {
//定义你的搜索参数
}
// 初始化分页数据
var pagination;
$scope.paginationInt = function($data) {
pagination = $scope.pagination = Pagination.create({
itemsCount: $data.total_items, // 总数
itemsPerPage: $data.epage, // 每页条数
currentPage: $data.page // 当前页码
});
// 分页操作
pagination.onChange = function(page) {
$scope.page(page);
};
};
$scope.paginationInt($scope.pageparameters);
// 筛选过滤列表页时传递的参数
$scope.borrowSearch = function(type, val) {
$scope.borrowData[type] = val;
$scope.page(1);//每次搜索都从第一页开始
};
// 排序
$scope.SearchTab = {};
$scope.SearchStatus = true;
$scope.current = {
//你的参数
};
// 页码跳转操作
$scope.skipInput = function(page, endPage) {
if (!isNaN(page)) {
var page = parseInt(page, 20),
endPage = parseInt(endPage, 20);
if (page > endPage || page <= 0) {
$scope.skipError = true;
} else {
$scope.skipError = false;
}
} else {
$scope.skipError = true;
}
};
$scope.page = function(page) {
$scope.Searchparameters.current_page = page;
// 分页方法
$http({ url:url, method:"post", params:$scope.Searchparameters }).success(function(data) { $scope.contentlist = data.items; }); }; });
看完了这篇文章,相信你对“angularjs结合pagination插件实现分页功能的示例分析”有了一定的了解,如果想了解更多相关知识,欢迎关注编程网行业资讯频道,感谢各位的阅读!