分享两个ASP分页(页码)函数

好久没用asp写程序了,最近工作需要,想起了以前写的一个分页函数。不过时间太久远了,找不到了。今天我抽空在写个吧,方便以后工作中使用。

直接写成函数的形式,如果输出生成好的页码,然后又程序输出或保存到文件中。

前十页为一批,第十页显示1,2,3…10;第十一页页码就变成了11,12…20
这种模式很多CMS都用到,比如5UCMS。函数名留点版权信息吧,cs=CatSeven

< %
function csPage(id,all,url1,url2)
	if id<>1 then tmp="<a href="""&url1&"1"&url2&""">首页</a> <a href="""&url1&id-1&url2&""">上一页</a>"
	istart=((id-1)\10)*10+1
	if(all-id)>9 then
		iend=((id-1)\10)*10+10
	else
		iend=all
	end if
	for i=istart to iend
		if i=id then
			tmp=tmp&"<span>"&i&"</span> "
		else
			tmp=tmp&"<a href="""&url1&i&url2&""">"&i&"</a> "
		end if
	next
	if id<>all then tmp=tmp&"<a href="""&url1&id+1&url2&""">下一页</a> <a href="""&url1&all&url2&""">尾页</a>"
	csPage=tmp
end function
 
'DEBUG
for j=1 to 40
	response.write "#Page"&j&":"&csPage(j,40,"#TEST_","_View")&"<br />"
next
%>

生成效果如下:
#Page1:1 2 3 4 5 6 7 8 9 10 下一页 尾页
#Page2:首页 上一页 1 2 3 4 5 6 7 8 9 10 下一页 尾页
#Page3:首页 上一页 1 2 3 4 5 6 7 8 9 10 下一页 尾页
#Page4:首页 上一页 1 2 3 4 5 6 7 8 9 10 下一页 尾页
#Page5:首页 上一页 1 2 3 4 5 6 7 8 9 10 下一页 尾页
#Page6:首页 上一页 1 2 3 4 5 6 7 8 9 10 下一页 尾页
#Page7:首页 上一页 1 2 3 4 5 6 7 8 9 10 下一页 尾页
#Page8:首页 上一页 1 2 3 4 5 6 7 8 9 10 下一页 尾页
#Page9:首页 上一页 1 2 3 4 5 6 7 8 9 10 下一页 尾页
#Page10:首页 上一页 1 2 3 4 5 6 7 8 9 10 下一页 尾页
#Page11:首页 上一页 11 12 13 14 15 16 17 18 19 20 下一页 尾页
#Page12:首页 上一页 11 12 13 14 15 16 17 18 19 20 下一页 尾页
#Page13:首页 上一页 11 12 13 14 15 16 17 18 19 20 下一页 尾页
#Page14:首页 上一页 11 12 13 14 15 16 17 18 19 20 下一页 尾页
#Page15:首页 上一页 11 12 13 14 15 16 17 18 19 20 下一页 尾页
#Page16:首页 上一页 11 12 13 14 15 16 17 18 19 20 下一页 尾页
#Page17:首页 上一页 11 12 13 14 15 16 17 18 19 20 下一页 尾页
#Page18:首页 上一页 11 12 13 14 15 16 17 18 19 20 下一页 尾页
#Page19:首页 上一页 11 12 13 14 15 16 17 18 19 20 下一页 尾页
#Page20:首页 上一页 11 12 13 14 15 16 17 18 19 20 下一页 尾页
#Page21:首页 上一页 21 22 23 24 25 26 27 28 29 30 下一页 尾页
#Page22:首页 上一页 21 22 23 24 25 26 27 28 29 30 下一页 尾页
#Page23:首页 上一页 21 22 23 24 25 26 27 28 29 30 下一页 尾页
#Page24:首页 上一页 21 22 23 24 25 26 27 28 29 30 下一页 尾页
#Page25:首页 上一页 21 22 23 24 25 26 27 28 29 30 下一页 尾页
#Page26:首页 上一页 21 22 23 24 25 26 27 28 29 30 下一页 尾页
#Page27:首页 上一页 21 22 23 24 25 26 27 28 29 30 下一页 尾页
#Page28:首页 上一页 21 22 23 24 25 26 27 28 29 30 下一页 尾页
#Page29:首页 上一页 21 22 23 24 25 26 27 28 29 30 下一页 尾页
#Page30:首页 上一页 21 22 23 24 25 26 27 28 29 30 下一页 尾页
#Page31:首页 上一页 31 32 33 34 35 36 37 38 39 40 下一页 尾页
#Page32:首页 上一页 31 32 33 34 35 36 37 38 39 40 下一页 尾页
#Page33:首页 上一页 31 32 33 34 35 36 37 38 39 40 下一页 尾页
#Page34:首页 上一页 31 32 33 34 35 36 37 38 39 40 下一页 尾页
#Page35:首页 上一页 31 32 33 34 35 36 37 38 39 40 下一页 尾页
#Page36:首页 上一页 31 32 33 34 35 36 37 38 39 40 下一页 尾页
#Page37:首页 上一页 31 32 33 34 35 36 37 38 39 40 下一页 尾页
#Page38:首页 上一页 31 32 33 34 35 36 37 38 39 40 下一页 尾页
#Page39:首页 上一页 31 32 33 34 35 36 37 38 39 40 下一页 尾页
#Page40:首页 上一页 31 32 33 34 35 36 37 38 39 40

说实话我并不是很喜欢这种分页方式,我比较喜欢上次写的那个。
如果不超过10页,比如共5页。1,2,3,4,5;
如果最末页减当前页码不超过十,页码显示最后10页;
其他的是前四后五的方法。直接给出代码吧

function csPage1(id,all,url1,url2)
	if id<>1 then tmp="<a href="""&url1&"1"&url2&""">首页</a> <a href="""&url1&id-1&url2&""">上一页</a> "
	if all&lt;10 or id&lt;10 then
		istart=1
		if all&lt;10 then iend=all else iend=10
	elseif all-id&lt;10 then
		istart=all-10
		iend=all
	else
		istart=id-4
		iend=id+5
	end if
 
	for i=istart to iend
		if i=id then
			tmp=tmp&"<span>"&i&"</span> "
		else
			tmp=tmp&"<a href="""&url1&i&url2&""">"&i&"</a> "
		end if
	next
	if id<>all then tmp=tmp&"<a href="""&url1&id+1&url2&""">下一页</a> <a href="""&url1&all&url2&""">尾页</a>"
	csPage1=tmp
end function
for j=1 to 40
	response.write "#Page"&j&":"&csPage1(j,40,"#TEST_","_View")&"<br />"
next

生成效果如下:
#Page1:1 2 3 4 5 6 7 8 9 10 下一页 尾页
#Page2:首页 上一页 1 2 3 4 5 6 7 8 9 10 下一页 尾页
#Page3:首页 上一页 1 2 3 4 5 6 7 8 9 10 下一页 尾页
#Page4:首页 上一页 1 2 3 4 5 6 7 8 9 10 下一页 尾页
#Page5:首页 上一页 1 2 3 4 5 6 7 8 9 10 下一页 尾页
#Page6:首页 上一页 1 2 3 4 5 6 7 8 9 10 下一页 尾页
#Page7:首页 上一页 1 2 3 4 5 6 7 8 9 10 下一页 尾页
#Page8:首页 上一页 1 2 3 4 5 6 7 8 9 10 下一页 尾页
#Page9:首页 上一页 1 2 3 4 5 6 7 8 9 10 下一页 尾页
#Page10:首页 上一页 6 7 8 9 10 11 12 13 14 15 下一页 尾页
#Page11:首页 上一页 7 8 9 10 11 12 13 14 15 16 下一页 尾页
#Page12:首页 上一页 8 9 10 11 12 13 14 15 16 17 下一页 尾页
#Page13:首页 上一页 9 10 11 12 13 14 15 16 17 18 下一页 尾页
#Page14:首页 上一页 10 11 12 13 14 15 16 17 18 19 下一页 尾页
#Page15:首页 上一页 11 12 13 14 15 16 17 18 19 20 下一页 尾页
#Page16:首页 上一页 12 13 14 15 16 17 18 19 20 21 下一页 尾页
#Page17:首页 上一页 13 14 15 16 17 18 19 20 21 22 下一页 尾页
#Page18:首页 上一页 14 15 16 17 18 19 20 21 22 23 下一页 尾页
#Page19:首页 上一页 15 16 17 18 19 20 21 22 23 24 下一页 尾页
#Page20:首页 上一页 16 17 18 19 20 21 22 23 24 25 下一页 尾页
#Page21:首页 上一页 17 18 19 20 21 22 23 24 25 26 下一页 尾页
#Page22:首页 上一页 18 19 20 21 22 23 24 25 26 27 下一页 尾页
#Page23:首页 上一页 19 20 21 22 23 24 25 26 27 28 下一页 尾页
#Page24:首页 上一页 20 21 22 23 24 25 26 27 28 29 下一页 尾页
#Page25:首页 上一页 21 22 23 24 25 26 27 28 29 30 下一页 尾页
#Page26:首页 上一页 22 23 24 25 26 27 28 29 30 31 下一页 尾页
#Page27:首页 上一页 23 24 25 26 27 28 29 30 31 32 下一页 尾页
#Page28:首页 上一页 24 25 26 27 28 29 30 31 32 33 下一页 尾页
#Page29:首页 上一页 25 26 27 28 29 30 31 32 33 34 下一页 尾页
#Page30:首页 上一页 26 27 28 29 30 31 32 33 34 35 下一页 尾页
#Page31:首页 上一页 30 31 32 33 34 35 36 37 38 39 40 下一页 尾页
#Page32:首页 上一页 30 31 32 33 34 35 36 37 38 39 40 下一页 尾页
#Page33:首页 上一页 30 31 32 33 34 35 36 37 38 39 40 下一页 尾页
#Page34:首页 上一页 30 31 32 33 34 35 36 37 38 39 40 下一页 尾页
#Page35:首页 上一页 30 31 32 33 34 35 36 37 38 39 40 下一页 尾页
#Page36:首页 上一页 30 31 32 33 34 35 36 37 38 39 40 下一页 尾页
#Page37:首页 上一页 30 31 32 33 34 35 36 37 38 39 40 下一页 尾页
#Page38:首页 上一页 30 31 32 33 34 35 36 37 38 39 40 下一页 尾页
#Page39:首页 上一页 30 31 32 33 34 35 36 37 38 39 40 下一页 尾页
#Page40:首页 上一页 30 31 32 33 34 35 36 37 38 39 40

分享两个ASP分页(页码)函数》上有3条评论

  1. Pingback引用通告: PHP分页(页码)函数 - 苗启源的部落格

  2. Pingback引用通告: 完美的ASP分页脚本 | 苗启源

  3. Pingback引用通告: angular.js 分页代码 | 苗启源

发表评论

电子邮件地址不会被公开。 必填项已用*标注