直接寫成函數(shù)的形式,如果輸出生成好的頁碼,然后又程序輸出或保存到文件中。
前十頁為一批,第十頁顯示1,2,3…10;第十一頁頁碼就變成了11,12…20
這種模式很多CMS都用到,比如5UCMS。函數(shù)名留點版權信息吧,cs=CatSeven
%
function csPage(id,all,url1,url2)
if id>1 then tmp="a href=""" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" url1"1"url2""">首頁/a> a href=""" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" url1id-1url2""">上一頁/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=""" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" url1iurl2""">"i"/a> "
end if
next
if id>all then tmp=tmp"a href=""" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" url1id+1url2""">下一頁/a> a href=""" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" url1allurl2""">尾頁/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=""" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" url1"1"url2""">首頁/a> a href=""" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" url1id-1url2""">上一頁/a> "
if alllt;10 or idlt;10 then
istart=1
if alllt;10 then iend=all else iend=10
elseif all-idlt;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=""" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" url1iurl2""">"i"/a> "
end if
next
if id>all then tmp=tmp"a href=""" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" url1id+1url2""">下一頁/a> a href=""" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" url1allurl2""">尾頁/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
上面的代碼在2009-2010年寫過簡單個兩個分頁(調取頁碼的函數(shù)):
現(xiàn)在看有點亂了,最近有重新整理了下代碼,重寫了ASP的分頁代碼,生成的分頁代碼兼容BootStrap。代碼如下:
'PageinationRecordSet 如果返回false,說明 Adodb.RecrodSet集 為空
'RecordSet Adodb.RecrodSet集
'PageId 當前所在頁
'PageSize 每頁顯示多少條?
'*PageCount 返回頁碼總數(shù)
function PageinationRecordSet(byref RecordSet,byref PageId,byval PageSize,byref PageCount)
if RecordSet.eof then
PageinationRecordSet = false
else
RecordSet.PageSize = PageSize
PageCount = RecordSet.PageCount
if PageId > PageCount then PageId = PageCount
RecordSet.absolutePage = PageId
PageinationRecordSet = true
end if
end function
'PageId 當前所在頁
'PageCount 頁碼總數(shù)
'urlTemplate 鏈接模板
function PageinationPageList(byval PageId,byval PageCount,byval urlTemplate)
dim codeTemp,iPage
if PageCount > 0 then
codeTemp = "ul class=""pagination"">"
if PageId = 1 then codeTemp = codeTemp "li class=""disabled"">" else codeTemp = codeTemp "li>"
codeTemp = codeTemp "a href=""" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" replace(urlTemplate,"{pg}",1) """> 首頁 /a>/li>"
if PageId = 1 then codeTemp = codeTemp "li class=""disabled"">" else codeTemp = codeTemp "li>"
codeTemp = codeTemp "a href=""" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" replace(urlTemplate,"{pg}",PageId-1) """>上一頁/a>/li>"
for iPage = PageId - 5 to PageId + 5
if iPage = PageId then
codeTemp = codeTemp "li class=""active"">a href=""" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" replace(urlTemplate,"{pg}",iPage) """>" iPage "/a>/li>"
elseif iPage PageId and iPage > 0 then
codeTemp = codeTemp "li>a href=""" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" replace(urlTemplate,"{pg}",iPage) """>" iPage "/a>/li>"
elseif iPage > PageId and iPage = PageCount then
codeTemp = codeTemp "li>a href=""" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" replace(urlTemplate,"{pg}",iPage) """>" iPage "/a>/li>"
end if
next
if PageId >= PageCount then codeTemp = codeTemp "li class=""disabled"">" else codeTemp = codeTemp "li>"
codeTemp = codeTemp "a href=""" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" replace(urlTemplate,"{pg}",PageId + 1) """>下一頁/a>/li>"
if PageId >= PageCount then codeTemp = codeTemp "li class=""disabled"">" else codeTemp = codeTemp "li>"
codeTemp = codeTemp "a href=""" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" replace(urlTemplate,"{pg}",PageCount) """>尾頁/a>/li>"
PageinationPageList = codeTemp "/ul>"
end if
end function
測試代碼:
pgId = Request.QueryString("pageid") '當前頁碼
pgSize = 10 '每頁大小
rsId = 0
Rs.Open Query,Conn,1,1
if PageinationRecordSet(Rs, pgId, pgSize, pgCount) then
do while not Rs.Eof and rsId pgSize
rsId = rsId + 1
'列表內容
Rs.MoveNext
loop
end if
Rs.Close
'共 pgCount 頁
response.write PageinationPageList(pgId, pgCount, "./list.asp?pageid={pg}") '輸出分頁代碼
到此這篇關于完美的ASP分頁腳本代碼的文章就介紹到這了,更多相關ASP分頁內容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關文章希望大家以后多多支持腳本之家!