angulatJs 前端数据分页展示——例
注:css用的是amazeui
html:
···
<div style="height:500px;overflow: auto;">
<table class="am-table" style="width:100%;padding: 10px 30px ">
<tr>
<td>序号</td>
<td>姓名</td>
<td>电话</td>
<td>年龄</td>
</tr>
<tr ng-repeat="items in list" class="gradeX">
<td>{{$index+1}}</td>
<td>{{items.name}}</td>
<td>{{items.tel}}</td>
<td>{{items.age}}</td>
</tr>
</table>
</div>
<ul class="am-pagination am-pagination-right">
<li ng-class="{true:'am-disabled'}[ 1 == currentPage]"><a href ng-click="firstPage()">首页</a></li>
<li ng-class="{true:'am-disabled'}[ 1 == currentPage]"><a href ng-click="prevPage()">上一页</a></li>
<li ng-class="pageTool_fun({{n}},'1')" ng-repeat="n in pageToolCursor"><a id="{{n}}" href ng-click="gotoXpage(n)">{{n}}</a></li>
<li><a>共{{itemsPerPage}}页 ({{totalRow}}条数据)</a></li>
<li ng-class="{true:'am-disabled'}[ (currentPage) == itemsPerPage]"><a href ng-click="nextPage()">后一页</a></li>
<li ng-class="{true:'am-disabled'}[ (currentPage) == itemsPerPage]"><a href ng-click="lastPage()">尾页</a></li>
</ul>
···
js:
···
var reqUrl = '***';
var dataObj = { //针对个人后台的请求数据,根据情况修改
'pageNumber': 1,
'pageSize': 10,
'id': ''
} $scope.list = [];
$scope.currentPage = 1; //当前页
$scope.totalRow = 0; //总条数
$scope.itemsPerPage = 0; //总页数
$scope.pageToolCursor = []; //截取的页码
//首页
$scope.firstPage = function() {
dataObj.pageNumber = 1;
$http({
method: 'get',
params: {
param: $.toJSON(dataObj) //针对个人用params传参
},
data: {},
url: reqUrl
})
.success(function(response, status, headers, config) {
var rstate = response.result;
if (rstate == '0') {
var _data = response.message;
$scope.list = _data.list;
$scope.currentPage = _data.pageNumber;
$scope.totalRow = _data.totalRow;
$scope.itemsPerPage = _data.itemsPerPage;
//初始化页码下标,最多只取前9页
var itemsNum = 9;
if ($scope.itemsPerPage < 9) {
itemsNum = $scope.itemsPerPage;
}
for (i = 1; i <= itemsNum; i++) {
$scope.pageToolCursor.push(i);
}
} else {
alert('获取数据失败!');
}
})
.error(function(response, status, headers, config) {
alert('获取数据失败..');
});
} //上一页
$scope.prevPage = function() {
if (!($scope.currentPage == 1)) {
var reqpages = $scope.currentPage - 1;
dataObj.pageNumber = reqpages;
$http({
method: 'get',
params: {
param: $.toJSON(dataObj)
},
data: {},
url: reqUrl
})
.success(function(response, status, headers, config) {
var rstate = response.result;
if (rstate == "0") {
var _data = response.message;
$scope.list = _data.list;
$scope.currentPage = _data.pageNumber;
$scope.totalRow = _data.totalRow;
$scope.itemsPerPage = _data.itemsPerPage;
var pageToolCursor = $scope.pageToolCursor;
if ($scope.currentPage <= pageToolCursor[0]) {
if (pageToolCursor[0] == 1) {return;
}
var arrayObj = new Array();
if ($scope.currentPage < 9) {
$scope.pageToolCursor = ['1', '2', '3', '4', '5', '6', '7', '8', '9']; } else {
for (i = $scope.currentPage; i > $scope.currentPage - 9; i--) {
arrayObj.unshift(i);
}
$scope.pageToolCursor = arrayObj;
}
}
} else {
alert("获取数据失败 !");
}
}).error(function(response, status, headers, config) {
alert('获取数据失败..');
});
}
}; //下一页
$scope.nextPage = function() {
if (!($scope.currentPage == $scope.itemsPerPage)) {
var reqpages = $scope.currentPage + 1;
dataObj.pageNumber = reqpages;
$http({
method: 'get',
params: {
param: $.toJSON(dataObj)
},
data: {},
url: reqUrl
})
.success(function(response, status, headers, config) {
var rstate = response.result;
if (rstate == "0") {
var _data = response.message;
$scope.list = _data.list;
$scope.currentPage = _data.pageNumber;
$scope.totalRow = _data.totalRow;
$scope.itemsPerPage = _data.itemsPerPage;
var pageToolCursor = $scope.pageToolCursor;if ($scope.currentPage >= pageToolCursor[pageToolCursor.length - 1]) {
if (pageToolCursor[pageToolCursor.length - 1] == $scope.itemsPerPage) {
return;
}
var arrayObj = new Array();
var enditems = 0;
var compareNUm = $scope.itemsPerPage - pageToolCursor[pageToolCursor.length - 1];
if (compareNUm < 9 && compareNUm > 0) {
enditems = $scope.itemsPerPage - pageToolCursor[pageToolCursor.length - 1];
for (i = $scope.currentPage + enditems; i > $scope.currentPage + enditems - 9; i--) {
arrayObj.unshift(i);
}
} else {
enditems = 9;
for (i = $scope.currentPage; i < $scope.currentPage + enditems; i++) {
arrayObj.push(i);
}
}
$scope.pageToolCursor = arrayObj;
}
} else {
alert("获取数据失败!");
}
})
.error(function(response, status, headers, config) {
alert('获取数据失败..');
});
} }; //尾页
$scope.lastPage = function() {
if ($scope.currentPage == $scope.itemsPerPage) {
return;
}
var reqpages = $scope.itemsPerPage;
dataObj.pageNumber = reqpages;
$http({
method: 'get',
params: {
param: $.toJSON(dataObj)
},
data: {},
url: reqUrl
})
.success(function(response, status, headers, config) {
var rstate = response.result;
if (rstate == "0") {
var _data = response.message;
$scope.list = _data.list;
$scope.currentPage = _data.pageNumber;
$scope.totalRow = _data.totalRow;
$scope.itemsPerPage = _data.itemsPerPage;
var arrayObj = new Array();
if ($scope.itemsPerPage > 9) {
for (i = $scope.itemsPerPage; i > $scope.itemsPerPage - 9; i--) {
arrayObj.unshift(i);
}
$scope.pageToolCursor = arrayObj;
}
} else {
alert("获取数据失败!");
}
})
.error(function(response, status, headers, config) {
alert('获取数据失败..');
});
}; //按页面 进入对应页
$scope.gotoXpage = function(x) {
if (x > $scope.itemsPerPage) {
return;
}
var reqpages = x;
dataObj.pageNumber = reqpages;
$http({
method: 'get',
params: {
param: $.toJSON(dataObj)
},
data: {},
url: reqUrl
})
.success(function(response, status, headers, config) {
var rstate = response.result;
if (rstate == "0") {
var _data = response.message;
$scope.list = _data.list;
$scope.currentPage = _data.pageNumber;
$scope.totalRow = _data.totalRow;
$scope.itemsPerPage = _data.itemsPerPage;
} else {
alert("获取数据失败!");
}
})
.error(function(response, status, headers, config) {
alert('获取数据失败..');
}); };
//设置页码 - 当前页 高亮显示
$scope.pageTool = function(n) {
var currentPage = $scope.currentPage;
var returStr = "";
if (n == currentPage) {
returStr = "am-active";
}
if (n > $scope.itemsPerPage) {
returStr = "am-disabled";
}
return returStr;
};
···
angulatJs 前端数据分页展示——例的更多相关文章
- js静态数据分页展示
拿vue做示例 首先定义data data() { return { tableData: [], // 当前页的数据,用于给表格展示用的 tableDataAll: [], // 需要拿来分页的总数 ...
- ssh整合问题总结--使用HibernateTemplate实现数据分页展示
在进行大量的数据展示时,必须要使用分页查询,第一次使用在SSH框架整合中使用分页查询,遇到了一些问题,下面以我练习的项目为例详细介绍,如何在Spring+hibernate(+action)的环境下完 ...
- vue中使用分页组件、将从数据库中查询出来的数据分页展示(前后端分离SpringBoot+Vue)
文章目录 1.看实现的效果 2.前端vue页面核心代码 2.1. 表格代码(表格样式可以去elementui组件库直接调用相应的) 2.2.分页组件代码 2.3 .script中的代码 3.后端核心代 ...
- Antd 表格数据分页展示
分页组件代码 render(){ const {total,size,currenPage} = this.state // 参数分别为数据总条数.每页数据条数.当前页页码 return ( // 渲 ...
- Python通过分页对数据进行展示
# 通过分页对数据进行展示 """ 要求: 每页显示10条数据 让用户输入要查看的页面:页码 """ USER_LIST = [] for ...
- MySQL+Service+Servlet+Jsp实现Table表格分页展示数据
下面以一个示例讲解如何使用MySQL+Service+Servlet+Jsp实现Table表格分页展示数据: eg:请假管理系统 要求如下: 一.打开首页页面, 访问查询请假记录的 servlet , ...
- js 从一个json拼接成另一个json,并做json数据分页table展示
先给数据: //原始json数据json = [{"id":"1","aid":"013","performa ...
- ThinkPHP快速实现数据分页(前端/后端分离)
数据 分页 可能是web 编程里最常用到的功能之一.thinkphp 实现分页功能十分简洁.只需要定义 几个参数 就能搞定.当然,扩展也是十分方便的. 让我们现在就开始thinkphp的分页实现吧. ...
- Handlebars的基本用法 Handlebars.js使用介绍 http://handlebarsjs.com/ Handlebars.js 模板引擎 javascript/jquery模板引擎——Handlebars初体验 handlebars.js 入门(1) 作为一名前端的你,必须掌握的模板引擎:Handlebars 前端数据模板handlebars与jquery整
Handlebars的基本用法 使用Handlebars,你可以轻松创建语义化模板,Mustache模板和Handlebars是兼容的,所以你可以将Mustache导入Handlebars以使用 Ha ...
随机推荐
- Xshell与securecrt对比
一.功能对比1.Xshell功能- 支持布局切换- 可调整Script执行顺序- 提供多标签功能- 对linux支持度高- 支持IPv6- 全球用户的多语言支持- 支持用户定义的键映射- 灵活和强大的 ...
- shell getopts命令
由于shell命令行的灵活性,自己编写代码判断时,复杂度会比较高.使用内部命令 getopts 可以很方便地处理命令行参数.一般格式为: getopts optstring name [args] ...
- Oracle或PL/SQL自动断开连接解决参考
ORACLE自动断开数据库连接解决办法 方法一.直接修改资源配置文件 分三个步骤在sqlplus环境下完成. 第一步,查询资源文件,找到CONNECT_TIME所在的pro ...
- 推荐MarkDown编辑工具Typora--文本画流程图示例
程序员界名言:talk is cheap, show me the code CODE: ### 8. 修改预留手机号-per.MCReservedMobilePhoneUpd #### 8.1业务规 ...
- mac vscode 实用快捷键
cmd+del:光标左边删到头 cmd+fn+del:光标右侧删到头
- Java的部分问题和小结
2015/9/6 ThreadLocal:该类提供了线程局部变量,这样可以生成对每个线程唯一的局部标识符. 2015/9/18 1.乱码问题: js:xdata = encodeURI(encode ...
- redis的密码设置
若连接redis时报错:Redis (error) NOAUTH Authentication required.,通常是由于redis设了密码但连接时却未提供密码引起的. 设置密码: 编辑redis ...
- 说一下HTML5与传统HTML的区别
1.首先说一下什么是HTML5 HTML5 将成为 HTML.XHTML 以及 HTML DOM 的新标准. HTML 的上一个版本诞生于 1999 年.自从那以后,Web 世界已经经历了巨变. HT ...
- 从 Server Timing Header 看服务器是如何处理请求的
原文作者:Florian Hämmerle 译者:UC 国际研发 Jothy 写在最前:欢迎你来到“UC国际技术”公众号,我们将为大家提供与客户端.服务端.算法.测试.数据.前端等相关的 ...
- nodejs 进阶:图片缩小
demo 效果: 代码: /** * Created by ZXW on 2017/10/30. */ var fs = require('fs'); var gm = require('gm'); ...