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

你可能感兴趣的文章
客运压力大 北京地铁4号线、大兴线工作日早高峰将限流
查看>>
中关村硬科技孵化器首次合作建科技成果转化创新平台
查看>>
广州外援斯贝茨被CBA公司停赛4场 罚款10万元
查看>>
福利!给所有需要找工作的小伙伴分享让我印象深刻的的开发面试题(第二部分),朋友们收好哦...
查看>>
React 折腾记 - (5) 记录用React开发项目过程遇到的问题(Webpack4/React16/antd等)
查看>>
Angular 6 + 折腾记 :(11) 写一个挺不靠谱的多少秒/分/时/天前的管道
查看>>
C++ 高性能服务器网络框架设计细节
查看>>
那一定都是你的错!- 一次FastDFS并发问题的排查经历
查看>>
redis限制请求频率及资源隔离
查看>>
详解Condition的await和signal等待/通知机制
查看>>
1206 - 长假之旅,即将开启
查看>>
Flutter 布局(一)- Container详解
查看>>
Log最佳实践
查看>>
App瘦身最佳实践
查看>>
图解 HTTP 的缓存机制 | 实用 HTTP
查看>>
30 天精通 RxJS(26):简易实例 Observable(一)
查看>>
Java和Docker限制的那些事儿
查看>>
掘金翻译计划周报 — 2018 年 9 月第 2 期
查看>>
整合登录界面与管理系统
查看>>
PyCon2018 回顾 (Part 1)
查看>>