web程序入门三(分页)
分页:
概念:
pageSize = 5 // 每页5条数据
psgeCount =Convert.toInt32( Math.Ceiling(recordCount*1.0/pageSize)) //共多少页
Math.Ceiling() // 地板除法,返回等于或大于该数的最小整数
pageIndex //当前页码值 (1,pageCount)
取数据:
根据当前页码值来动态显示数据
select row_number() over (order by id ) as num, * from userInfo;
查询共有多少列
row_number()是一个方法
select * from( row_number() over (order by id ) as num, * from userInfo ) as t
where t.num>=20 and t.num<=24;
通过这条sql语句来查询当前数据
根据当前页码,计算要显示的内容
页码通过URL传参 这样后端可以从URL中获取当前页数
下面页码处处理:
<a href ="list.aspx?pageindex=1">首页</a>
<a href ="list.aspx?pageindex=<%=pageindex<=1?1:pageindex-1%>">上一页</a> pageindex 是后端传到前端的数据
<a href ="list.aspx?pageindex=<%=pageindex>=20?20:pangeindex+1%>">下一页</a> 20是假定的总页码20页
<a href ="list.aspx?pageindex=20">尾页</a>
改进 版当前页是第一页时 不显示首页和上一页连接
if (pageindex==1)
{
<a href ="list.aspx?pageindex=<%=pageindex>=20?20:pangeindex+1%>">下一页</a> 20是假定的总页码20页
<a href ="list.aspx?pageindex=20">尾页</a>
}
else if(pageindex==20)
{
<a href ="list.aspx?pageindex=1">首页</a>
<a href ="list.aspx?pageindex=<%=pageindex<=1?1:pageindex-1%>">上一页</a>
}
else
{
<a href ="list.aspx?pageindex=1">首页</a>
<a href ="list.aspx?pageindex=<%=pageindex<=1?1:pageindex-1%>">上一页</a> pageindex 是后端传到前端的数据
<a href ="list.aspx?pageindex=<%=pageindex>=20?20:pangeindex+1%>">下一页</a> 20是假定的总页码20页
<a href ="list.aspx?pageindex=20">尾页</a>
}
数字页码:
页面上最多显示10个数字页码 起始位置-------终止位置
1…………10 (看百度下面分页)
3…………12
5…………14
起始位置 页码 start = pageIndex-5 <1?1:pageindex-5
终止位置 页码 end = pageindex+4
if (end>20) 20为假定的总页数20
{
end=20;
start=end-9>1?end-9:1; 这一条是确定,没有10页,或者end是最后一页时,页面无法显示10个页码
}
这个不需要更改后端代码,只需要更改前端显示
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· 10年+ .NET Coder 心语 ── 封装的思维:从隐藏、稳定开始理解其本质意义
· 提示词工程——AI应用必不可少的技术
· 地球OL攻略 —— 某应届生求职总结
· 字符编码:从基础到乱码解决
· SpringCloud带你走进微服务的世界