用JS实现前端分页页码管理,可以很美观的区分页码显示(这也是参考大多数网站的分页页码展示),能够有很好的用户体验,这也是有业务需要就写了一下,还是新手,经验不足,欢迎指出批评!

首先先看效果图:
这是初始页面(也就是第一页)的界面,如果为第一页时,则首页和上一页按钮不可用,为了展示分页的效果,我当前的分页是一条一页。
这是页码大于5页时展示的效果:1,2页始终始终显示(考虑到用户体验)
这是最后一页的效果图:
下面直接上js代码:
//页码显示
$(function(){
var dqPage = $("#dqPage").text();//得到当前页数
dqPage = parseInt(dqPage);//得到的文本转成int
var pageCount = $("#pageCount").text();//得到总页数
pageCount = parseInt(pageCount);
var i = 1;
i = parseInt(i);
var item="";
var href = "这里是请求地址";
if (pageCount <= 5 ) {//总页数小于五页,则加载所有页
for (i; i <= pageCount; i++) {
if (i == dqPage) {
item += "<span class='disabled'>"+i+"</span>";
}else{
item += "<a href='"+href+i+"' >"+i+"</a>";
}
};
$('#pageBtn').append(item);
return;
}else if (pageCount > 5) {//总页数大于五页,则加载五页
if (dqPage < 5) {//当前页小于5,加载1-5页
for (i; i <= 5; i++) {
if (i == dqPage) {
item += "<span class='disabled'>"+i+"</span>";
}else{
item += "<a href='"+href+i+"' >"+i+"</a>";
}
};
if (dqPage <= pageCount-2) {//最后一页追加“...”代表省略的页
item += "<span> . . . </span>";
}
$('#pageBtn').append(item);
return;
}else if (dqPage >= 5) {//当前页大于5页
for (i; i <= 2; i++) {//1,2页码始终显示
item += "<a href='"+href+i+"' >"+i+"</a>";
}
item += "<span> . . . </span>";//2页码后面用...代替部分未显示的页码
if (dqPage+1 == pageCount) {//当前页+1等于总页码
for(i = dqPage-1; i <= pageCount; i++){//“...”后面跟三个页码当前页居中显示
if (i == dqPage) {
item += "<span class='disabled'>"+i+"</span>";
}else{
item += "<a href='"+href+i+"' >"+i+"</a>";
}
}
}else if (dqPage == pageCount) {//当前页数等于总页数则是最后一页页码显示在最后
for(i = dqPage-2; i <= pageCount; i++){//...后面跟三个页码当前页居中显示
if (i == dqPage) {
item += "<span class='disabled'>"+i+"</span>";
}else{
item += "<a href='"+href+i+"' >"+i+"</a>";
}
}
}else{//当前页小于总页数,则最后一页后面跟...
for(i = dqPage-1; i <= dqPage+1; i++){//dqPage+1页后面...
if (i == dqPage) {
item += "<span class='disabled'>"+i+"</span>";
}else{
item += "<a href='"+href+i+"' >"+i+"</a>";
}
}
item += "<span> . . . </span>";
}
$('#pageBtn').append(item);
return;
}
}
});
<%-- 得到当前页--%>
<span id="dqPage" hidden="hidden" class="disabled1 current">${page}</span>
<%-- js控制的页码显示在这个div中--%>
<div id="pageBtn" style="width: auto;display:inline-block !important;height: auto;">
</div>
这是实现js控制页码显示的所有步骤,可能有点麻烦,后续会继续优化,当然现在网上也有很多分页插件,全凭个人喜好。
至于 “首页,上一页,下一页,末页,以及跳转页,这些就看各自的需求实现了(我是用el表达式控制的)”
以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,同时也希望多多支持!
# js
# 分页
# Bootstrap jquery.twbsPagination.js动态页码分页实例代码
# javascript分页代码(当前页码居中)
# 某页码显示的helper 少量调整
# 另附js版
# javascript 支持页码格式的分页类
# js实现下一页页码效果
# 这是
# 当前页
# 上一页
# 加载
# 首页
# 第一页
# 我是
# 也有
# 很好
# 在这个
# 是有
# 下一页
# 则是
# 这也
# 考虑到
# 写了
# 跳转
# 就看
# 很美
相关文章:
宝塔建站后网页无法访问如何解决?
寿县云建站:智能SEO优化与多行业模板快速上线指南
如何在局域网内绑定自建网站域名?
武汉网站制作费用多少,在武汉武昌,建面100平方左右的房子,想装暖气片,费用大概是多少啊?
南平网站制作公司,2025年南平市事业单位报名时间?
南宁网站建设制作定制,南宁网站建设可以定制吗?
如何用虚拟主机快速搭建网站?详细步骤解析
常州企业网站制作公司,全国继续教育网怎么登录?
网站企业制作流程,用什么语言做企业网站比较好?
内部网站制作流程,如何建立公司内部网站?
如何快速重置建站主机并恢复默认配置?
如何快速配置高效服务器建站软件?
如何彻底删除建站之星生成的Banner?
东莞专业制作网站的公司,东莞大学生网的网址是什么?
如何选择适合PHP云建站的开源框架?
简历在线制作网站免费版,如何创建个人简历?
北京制作网站的公司,北京铁路集团官方网站?
如何快速生成可下载的建站源码工具?
电脑免费海报制作网站推荐,招聘海报哪个网站多?
简易网站制作视频教程,使用记事本编写一个简单的网页html文件?
如何在服务器上配置二级域名建站?
企业网站制作公司网页,推荐几家专业的天津网站制作公司?
建站IDE高效指南:快速搭建+SEO优化+自适应模板全解析
如何快速查询网址的建站时间与历史轨迹?
如何通过.red域名打造高辨识度品牌网站?
微课制作网站有哪些,微课网怎么进?
网站制作免费,什么网站能看正片电影?
平台云上自助建站如何快速打造专业网站?
Python lxml的etree和ElementTree有什么区别
手机钓鱼网站怎么制作视频,怎样拦截钓鱼网站。怎么办?
如何用wdcp快速搭建高效网站?
C++如何编写函数模板?(泛型编程入门)
免费视频制作网站,更新又快又好的免费电影网站?
惠州网站建设制作推广,惠州市华视达文化传媒有限公司怎么样?
如何在Windows环境下新建FTP站点并设置权限?
如何规划企业建站流程的关键步骤?
,网页ppt怎么弄成自己的ppt?
微信小程序制作网站有哪些,微信小程序需要做网站吗?
建站主机选购指南:核心配置优化与品牌推荐方案
网站制作的步骤包括,正确网址格式怎么写?
专业网站建设制作报价,网页设计制作要考什么证?
建站主机是什么?如何选择适合的建站主机?
Swift中switch语句区间和元组模式匹配
高防服务器:AI智能防御DDoS攻击与数据安全保障
定制建站哪家更专业可靠?推荐榜单揭晓
盘锦网站制作公司,盘锦大洼有多少5G网站?
在线教育网站制作平台,山西立德教育官网?
如何登录建站主机?访问步骤全解析
Swift中循环语句中的转移语句 break 和 continue
如何快速搭建高效简练网站?
*请认真填写需求信息,我们会在24小时内与您取得联系。