关于分页,显示分页的页数<初学者心得,大神绕道>

今天学了分页,其他地方我能理解,唯独显示页数让我非常头痛,不知道是怎么显示页数的.

比如你有1000页的数据,但是你不能在下方显示1000页吧,那样多么的不人性化,甚至比没显示还惨.

所以作为初学者的我跑到了百度然后随便搜一个东西,开始研究起百度的页数显示规则.

刚开始我怎么都想不明白,按照10页显示为什么要到第7才开始变化,为什么不是第6页开始变化,为什么不是第5页开始变化.

不巧的是被我琢磨出来了.

下面开始个人答疑:(大神请绕道,虽然这是小问题.)

总页数 : 设总页数为15页

每次显示:5页

开始页面 : 第:n 页

结束页面 : 第:n 页


比如说:你想每次显示5页 .

a b c d e

那么首先你就得根据你的想法设置你当前页的前面有几页后面有几页.

所以可以有:

假设当前页是a:那么a的前面就是0页,a的后面就是4页

假设当前页是b:那么b的前面就是1页,b的后面就是3页

假设当前页是c:那么c的前面就是2页,c的后面就是2页

假设当前页是d:那么d的前面就是3页,d的后面就是1页

假设当前页是e:那么e的前面就是4页,e的后面就是0页


然后你就要开始判断 :我们按照当前页是c来计算吧.

首先判断你的总页数是否大于5页,如果不大于起始页就1,结束页就是5.

如果大于:

起始页就是 当前页  -2

结束页就是 当前页 +2 


当然之后还得判断当前页如果-2之后是否小于1 当前页+2之后会不会大于总页数 这里我就不深研究了.

最后循环:

tip:先定义一个数组存起来

int pages[] = new int[5];

tip:再定义一个索引

int index = 0;

for(int i = 起始页;i <= 结束页;i++){

pages[index++] = i;

}

最后返回一个数组.


结果:

1 2 3 4 5

2 3 4 5 6

3 4 5 6 7

4 6 7 8 9

6 7 8 9 10

7 8 9 10 11

8 9 10 11 12

9 10 11 12 13

10 11 12 13 14

11 12 13 14 15

....等等 当然可以往回走. 

注意:为了防止数组越界 ,千万要做好判断是否越界的准备.






  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
<html> <head> <title>人员管理界面</title> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <link href="https://cdn.bootcss.com/bootstrap/3.3.7/css/bootstrap.min.css" rel="stylesheet"> <script type="text/javascript" src="${pageContext.request.contextPath}/js/jquery-1.11.3.min.js"></script> </head> <body> <div class="container"> <div class="row clearfix"> <div class="col-md-12 column"> <div class="page-header"> <h1> <small>员工列表 —— 显示所有员工信息</small> </h1> </div> </div> </div> <div class="row clearfix"> <div class="col-md-12 column"> <table class="table table-hover table-striped"> <thead> <tr> <th>ID</th> <th>姓名</th> <th>电话号</th> <th>地址</th> <th>职位</th> <th>职位编号</th> <th>状态</th> <th>证件照</th> </tr> </thead> <tbody> <c:forEach items="${employees}" var="employees"> <tr> <td>${employees.id}</td> <td>${employees.name}</td> <td>${employees.phonenumber}</td> <td>${employees.address}</td> <td>${employees.job}</td> <td>${employees.jobid}</td> <td>${employees.state}</td> <td><img src="${pageContext.request.contextPath}/images/${employees.pic}" style="width: 100px; height: 50px"></td> <td> <a href="${pageContext.request.contextPath}/toupdate/${employees.id}">更改</a> | <a href="${pageContext.request.contextPath}/delete/${employees.id}" onclick="return confirm('确定要删除吗?')">删除</a> </td> </tr> </c:forEach> </tbody> </table> </div> </div> </div> </body> </html>给这个界面的表格实现一个分页的功能,每页的最大数目为5
06-02

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值