博客
关于我
强烈建议你试试无所不能的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

你可能感兴趣的文章
Calculate CRC32 as in STM32 hardware (EWARM v.5.50 and later)
查看>>
Android Sdk 国内镜像下载地址
查看>>
C#学习笔记(八):扩展方法
查看>>
【算法导论】多项式求和
查看>>
DELPHI关闭瑞星监控的源代码
查看>>
poj 2762 Going from u to v or from v to u? (推断它是否是一个薄弱环节图)
查看>>
web网站加速之CDN(Content Delivery Network)技术原理
查看>>
IndexReader已解决的问题
查看>>
servlet其工作原理和例子证明
查看>>
document.all使用
查看>>
BZOJ4044 : [Cerc2014] Virus synthesis
查看>>
c++读取文本文件
查看>>
动态链接库、静态链接库
查看>>
mysql日志问题定位实用命令
查看>>
【LeetCode】257. Binary Tree Paths
查看>>
CI在CentOS中的部署与实践LNMP
查看>>
解决LinearLayout中控件不能居右对齐
查看>>
串口传输文件 lrzsz
查看>>
MySQL SQL优化之in与range查询【转】
查看>>
jQuery 有条件排序
查看>>