存档
好久没用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 下一页 [...]