博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
C#页码导航显示及算法
阅读量:6699 次
发布时间:2019-06-25

本文共 4469 字,大约阅读时间需要 14 分钟。

页码导航,先看显示效果:

算法要求:

1、页数小于等于1时不显示;

2、页数大于10时,自动缩短。

 

具体代码如下:

///         /// 获取分页导航        ///         /// 页码        /// 页数        /// 链接        /// 
HTML代码
private string GePageNavgation(int intPageIndex, int intPageCount, string strUrl) { StringBuilder sb = new StringBuilder("
"); if (intPageCount > 1) { //页码显示 if (intPageIndex == 1) { sb.Append("
< 上一页"); } else if (intPageIndex > 1) { sb.Append("
< 上一页"); } bool Dot1 = false, Dot2 = false; for (int i = 1; i <= intPageCount; i++) { if (i == intPageIndex) { sb.Append("
" + intPageIndex.ToString() + ""); continue; } if (i <= 3) { sb.Append("
" + i.ToString() + ""); continue; } if (intPageIndex > 7) { if (!Dot1) { sb.Append("
..."); Dot1 = true; } } if (i == intPageIndex - 3) { sb.Append("
" + i.ToString() + ""); continue; } if (i == intPageIndex - 2) { sb.Append("
" + i.ToString() + ""); continue; } if (i == intPageIndex - 1) { sb.Append("
" + i.ToString() + ""); continue; } if (i == intPageIndex + 1) { sb.Append("
" + i.ToString() + ""); continue; } if (i == intPageIndex + 2) { sb.Append("
" + i.ToString() + ""); continue; } if (i == intPageIndex + 3) { sb.Append("
" + i.ToString() + ""); continue; } if ((intPageCount - intPageIndex) > 6 && i > intPageIndex + 3) { if (!Dot2) { sb.Append("
..."); Dot2 = true; } } if (i > intPageCount - 3) { sb.Append("
" + i.ToString() + ""); continue; } } if (intPageIndex == intPageCount) { sb.Append("
下一页 >"); } else if (intPageIndex + 1 <= intPageCount) { sb.Append("
下一页 >"); } } sb.Append("
"); return sb.ToString(); }

CSS样式:

.div_pagenavgation{
margin-top:5px; line-height:20px; float:right;}.div_pagenavgation a{
float:left; text-decoration:none; color:#06F; margin-left:5px; padding-left:5px; padding-right:5px; height:20px; text-align:center; display:block; border:1px #CCC solid;}.div_pagenavgation .dotted{
float:left; }.div_pagenavgation .current{
float:left; margin-left:5px; padding-left:5px; padding-right:5px; height:20px; text-align:center; display:block; border:1px #CCC solid ; background-color:#0080C0; color:#FFF;}.div_pagenavgation .disabled{
float:left; margin-left:5px; padding-left:5px; padding-right:5px; height:20px; text-align:center; display:block; border:1px #CCC solid; color:#CCC;}

 

产生的HTML如下:

 

 

说明:很久前赶工完成,基本能够实现要求,没有经过仔细优化,谁优化了再回复看看!

 

 

 

 

转载于:https://www.cnblogs.com/zonx/archive/2012/12/14/2818476.html

你可能感兴趣的文章
带你从零学ReactNative开发跨平台App开发-[react native 仿boss直聘](十三)
查看>>
c#的托管代码和非托管代码的理解
查看>>
Laravel学习笔记之Session源码解析(上)
查看>>
Java NIO vs. IO
查看>>
Add Two Numbers
查看>>
用Thymeleaf在前台下拉列表取值
查看>>
Java strictfp
查看>>
新建jsp项目
查看>>
numpy.loadtxt()
查看>>
Chrome 调用vue.js 记录
查看>>
将float转换为数据类型numeric时出现算术溢出错误
查看>>
Sqlserver2008R2配置数据库镜像之我的经验总结
查看>>
RDS经典网络平滑迁移到VPC的混访方案
查看>>
svg矢量图制作工具(Sketsa SVG Editor) v7.1.1 中文免费版
查看>>
洛谷P2761 软件补丁问题(状压DP,SPFA)
查看>>
[osg][opengl]透视投影的参数Perspective
查看>>
总结!!!!!
查看>>
SpringBoot入门(三)——入口类解析
查看>>
Spring Boot系列——Spring Boot如何启动
查看>>
NIO之Charset类字符编码对象
查看>>