完美的ASP分頁腳本代碼
直接寫成函數(shù)的形式,如果輸出生成好的頁碼,然后又程序輸出或保存到文件中。
前十頁為一批,第十頁顯示1,2,3…10;第十一頁頁碼就變成了11,12…20
這種模式很多CMS都用到,比如5UCMS。函數(shù)名留點版權(quán)信息吧,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" &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=""" 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&i&url2&""">"&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" &url1&id+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" &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;
如果最末頁減當(dāng)前頁碼不超過十,頁碼顯示最后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" &url1&id-1&url2&""">上一頁</a> " if all<10 or id<10 then istart=1 if all<10 then iend=all else iend=10 elseif all-id<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" &url1&i&url2&""">"&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" &url1&id+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" &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
上面的代碼在2009-2010年寫過簡單個兩個分頁(調(diào)取頁碼的函數(shù)):
現(xiàn)在看有點亂了,最近有重新整理了下代碼,重寫了ASP的分頁代碼,生成的分頁代碼兼容BootStrap。代碼如下:
"PageinationRecordSet 如果返回false,說明 Adodb.RecrodSet集 為空 "RecordSet Adodb.RecrodSet集 "PageId 當(dāng)前所在頁 "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 當(dāng)前所在頁 "PageCount 頁碼總數(shù) "urlTemplate 鏈接模板 function PageinationPageList(byval PageId,byval PageCount,byval urlTemplate) dim codeTemp,iPage if PageCount > 0 then codeTemp = "<ulpagination"">" if PageId <= 1 then codeTemp = codeTemp & "<lidisabled"">" 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 & "<lidisabled"">" 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 & "<liactive""><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 & "<lidisabled"">" 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 & "<lidisabled"">" 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") "當(dāng)前頁碼 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 "列表內(nèi)容 Rs.MoveNext loop end if Rs.Close "共 pgCount 頁 response.write PageinationPageList(pgId, pgCount, "./list.asp?pageid={pg}") "輸出分頁代碼
到此這篇關(guān)于完美的ASP分頁腳本代碼的文章就介紹到這了,更多相關(guān)ASP分頁內(nèi)容請搜索以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持!
相關(guān)文章:
1. Spring @Primary和@Qualifier注解原理解析2. 詳解php如何合并身份證正反面圖片為一張圖片3. 如何用python識別滑塊驗證碼中的缺口4. php設(shè)計模式之模板模式實例分析【星際爭霸游戲案例】5. AJAX實現(xiàn)省市縣三級聯(lián)動效果6. ASP.NET MVC視圖頁使用jQuery傳遞異步數(shù)據(jù)的幾種方式詳解7. Java基于redis和mysql實現(xiàn)簡單的秒殺(附demo)8. SpringBoot+SpringCache實現(xiàn)兩級緩存(Redis+Caffeine)9. HTML iframe標(biāo)簽用法案例詳解10. ASP.NET 2.0頁面框架的幾處變化
