zoukankan
html css js c++ java
Pagination 分页类
public
class
Pagination
{
/**/
///
<summary>
///
页码显示
///
</summary>
///
<param name="curp">
当前页
</param>
///
<param name="pagecount">
总页数
</param>
///
<param name="maxcount">
最大显示页码行数
</param>
///
<param name="leftstr">
目标URL地址页码标记左边字符串
</param>
///
<param name="rightstr">
目标URL地址页码标记右边字符串
</param>
///
<returns>
页码字符串
</returns>
public
static
string
Show(
int
curp,
int
pagecount,
int
maxcount,
string
leftstr,
string
rightstr)
{
StringBuilder str
=
new
StringBuilder();
int
leftMin, RightMax;
if
(maxcount
%
2
==
0
)
{
leftMin
=
curp
-
intplus(maxcount);
RightMax
=
curp
+
intplus(maxcount)
+
1
;
}
else
{
leftMin
=
curp
-
intplus(maxcount);
RightMax
=
curp
+
intplus(maxcount);
}
if
(leftMin
<
2
)
leftMin
=
1
;
if
(RightMax
>
pagecount)
RightMax
=
pagecount;
if
(curp
<
intplus(maxcount)
&&
pagecount
>=
maxcount)
{
leftMin
=
1
;
RightMax
=
maxcount;
}
if
(leftMin
>
2
)
str.Append(
"
<a class=\
"
page\
"
href=\
""
+ leftstr +
"
1
"
+ rightstr +
"
\
"
title=\
"
第1页\
"
>1</a><a class=\
"
around\
"
href=\
""
+ leftstr + (curp - 1).ToString() + rightstr +
"
\
"
title=\
"
上一页\
"
><<</a>
"
);
if
(leftMin
==
2
)
str.Append(
"
<a class=\
"
page\
"
href=\
""
+ leftstr +
"
1
"
+ rightstr +
"
\
"
title=\
"
第1页\
"
>1</a>
"
);
for
(
int
i
=
leftMin; i
<=
RightMax; i
++
)
{
if
(i
==
curp)
str.Append(
"
<a class=\
"
pagenow\
"
>
"
+
i.ToString()
+
"
</a>
"
);
else
str.Append(
"
<a class=\
"
page\
"
href=\
""
+ leftstr + i.ToString() + rightstr +
"
\
"
title=\
"
第
"
+ i.ToString() +
"
页\
"
>
"
+
i.ToString()
+
"
</a>
"
);
}
if
(RightMax
<
pagecount
-
1
)
str.Append(
"
<a class=\
"
around\
"
href=\
""
+ leftstr + (curp + 1).ToString() + rightstr +
"
\
"
title=\
"
下一页\
"
>>></a><a class=\
"
page\
"
href=\
""
+ leftstr + pagecount.ToString() + rightstr +
"
\
"
title=\
"
第
"
+ pagecount.ToString() +
"
页\
"
>
"
+
pagecount.ToString()
+
"
</a>
"
);
if
(RightMax
==
pagecount
-
1
)
str.Append(
"
<a class=\
"
page\
"
href=\
""
+ leftstr + pagecount.ToString() + rightstr +
"
\
"
title=\
"
第
"
+ pagecount.ToString() +
"
页\
"
>
"
+
pagecount.ToString()
+
"
</a>
"
);
return
str.ToString();
}
/**/
///
<summary>
///
show page numbers: for long article.
///
</summary>
///
<param name="curp">
当前页
</param>
///
<param name="pagecount">
总页数
</param>
///
<param name="maxcount">
最大显示页码行数
</param>
///
<param name="leftstr">
目标URL地址页码标记左边字符串
</param>
///
<param name="rightstr">
目标URL地址页码标记右边字符串
</param>
///
<returns>
页码字符串
</returns>
public
static
string
Show2(
int
curp,
int
pagecount,
int
maxcount,
string
leftstr,
string
rightstr)
{
StringBuilder str
=
new
StringBuilder();
int
leftMin, RightMax;
if
(maxcount
%
2
==
0
)
{
leftMin
=
curp
-
intplus(maxcount);
RightMax
=
curp
+
intplus(maxcount)
+
1
;
}
else
{
leftMin
=
curp
-
intplus(maxcount);
RightMax
=
curp
+
intplus(maxcount);
}
if
(leftMin
<
2
)
leftMin
=
1
;
if
(RightMax
>
pagecount)
RightMax
=
pagecount;
if
(curp
<
intplus(maxcount)
&&
pagecount
>=
maxcount)
{
leftMin
=
1
;
RightMax
=
maxcount;
}
//
左侧
if
(curp
==
1
)
str.Append(
"
<a class=\
"
pagenow\
"
>上一页</a>
"
);
else
{
if
(curp
>
2
)
str.Append(
"
<a href=\
""
+ leftstr +
"
-
"
+ (curp - 1) + rightstr +
"
\
"
class=\
"
page\
"
>上一页</a>
"
);
else
str.Append(
"
<a href=\
""
+ leftstr + rightstr +
"
\
"
class=\
"
page\
"
>上一页</a>
"
);
}
if
(leftMin
>
2
)
str.Append(
"
<a class=\
"
page\
"
href=\
""
+ leftstr + rightstr +
"
\
"
title=\
"
第1页\
"
>1</a><a class=\
"
around\
"
href=\
""
+ leftstr +
"
-
"
+ (curp - 1).ToString() + rightstr +
"
\
"
title=\
"
上一页\
"
>‹‹</a>
"
);
if
(leftMin
==
2
)
str.Append(
"
<a class=\
"
page\
"
href=\
""
+ leftstr + rightstr +
"
\
"
title=\
"
第1页\
"
>1</a>
"
);
//
中间
for
(
int
i
=
leftMin; i
<=
RightMax; i
++
)
{
if
(i
==
curp)
str.Append(
"
<a class=\
"
pagenow\
"
>
"
+
i.ToString()
+
"
</a>
"
);
else
{
if
(i
>
1
)
str.Append(
"
<a class=\
"
page\
"
href=\
""
+ leftstr +
"
-
"
+ i.ToString() + rightstr +
"
\
"
title=\
"
第
"
+ i.ToString() +
"
页\
"
>
"
+
i.ToString()
+
"
</a>
"
);
else
str.Append(
"
<a class=\
"
page\
"
href=\
""
+ leftstr + rightstr +
"
\
"
title=\
"
第
"
+ i.ToString() +
"
页\
"
>
"
+
i.ToString()
+
"
</a>
"
);
}
}
//
右侧
if
(RightMax
<
pagecount
-
1
)
str.Append(
"
<a class=\
"
around\
"
href=\
""
+ leftstr +
"
-
"
+(curp + 1).ToString() + rightstr +
"
\
"
title=\
"
下一页\
"
>››</a><a class=\
"
page\
"
href=\
""
+ leftstr +
"
-
"
+pagecount.ToString() + rightstr +
"
\
"
title=\
"
第
"
+ pagecount.ToString() +
"
页\
"
>
"
+
pagecount.ToString()
+
"
</a>
"
);
if
(RightMax
==
pagecount
-
1
)
str.Append(
"
<a class=\
"
page\
"
href=\
""
+ leftstr +
"
-
"
+ pagecount.ToString() + rightstr +
"
\
"
title=\
"
第
"
+ pagecount.ToString() +
"
页\
"
>
"
+
pagecount.ToString()
+
"
</a>
"
);
if
(curp
==
pagecount)
str.Append(
"
<a class=\
"
pagenow\
"
>下一页</a>
"
);
else
str.Append(
"
<a href=\
""
+ leftstr +
"
-
"
+ (curp + 1) + rightstr +
"
\
"
class=\
"
page\
"
>下一页</a>
"
);
return
str.ToString();
}
/**/
///
<summary>
///
取得数除以2得数的整数部份
///
</summary>
///
<param name="i">
被2除的整数
</param>
///
<returns></returns>
public
static
int
intplus(
int
i)
{
if
(i
%
2
==
0
)
return
i
/
2
;
else
return
(i
-
1
)
/
2
;
}
}
查看全文
相关阅读:
Animation Curve运动曲线
Unity3D Collider类的信息传输Ontrigger*与OnCollision*
springmvc拦截器的简单了解
JDK中的注解简单了解
面试加分项---HashMap底层实现原理
springmvc参数绑定
springmvc和struts2的区别
修改tomcat的编码方式,可以解决某些get请求乱码问题
springmvc 怎么响应json数据
权限控制框架---shiro入门
原文地址:https://www.cnblogs.com/cancer_xu/p/1607122.html
最新文章
Eclipse常用不常用快捷键
poi导入Excel,数字科学记数法转换
两个集合取交并差集
JZ初中OJ 1087. 约数和1
JZ初中OJ 2293. [noip普及组1]深水旅店
JZ初中OJ 2292. [noip普及组1]区间
JZ初中OJ 2291. [noip普及组1]序列
JZ初中OJ 1566. [GDKOI]幸运锁
JZ初中OJ 1564. [GDKOI]旅游
JZ高中OJ 6274. [NOIP提高组模拟1]梦境
热门文章
JZ高中OJ 6275. [NOIP提高组模拟1]小L的数列
JZ高中OJ 1388. 自行车赛
JZ高中OJ 1386. 排序
深入解读Lua中迭代器与泛型for的使用
递归-阶乘&斐波拉契数列
XLua的一些官网
unity fixed timestep
unity 旋转欧拉角 万向锁 解释
Unity3D_向量(Vector3)数学基础
Unity增量时间Time.deltaTime详解
Copyright © 2011-2022 走看看