Welcome

首页 / 网页编程 / ASP / ASP通用分页的实现

ASP通用分页的实现2011-11-12自己写的通用分页,可设置显示的分页链接数,带下拉选择:

1<%2"Written by Shaoyun 20:17 2008年5月29日 0:383"Email:shaoyun at yeah.net4"Blog:http://shaoyun.cnblogs.com5"分页函数:splitpage(记录总数,每页显示记录数,显示几条分页链接)6Function splitpage(rscount,pagesize,shownum)78Dim pagenum,curpage,first_page,last_page,up_page,down_page,idx,addr_url,splitpage_html910addr_url=Request.ServerVariables("URL")11addr_url=Mid(addr_url,InstrRev(addr_url,"/")+1)12addr_url=addr_url & "?page="1314if (rscount mod pagesize)=0 then15  pagenum=rscount/pagesize16else17  pagenum=rscount/pagesize+118end if19first_page=120last_page=pagenum2122curpage=123if isnumeric(trim(request.QueryString("page"))) then24  curpage=trim(request.QueryString("page"))25  if pagenum-curpage<0 then curpage=pagenum26else27  curpage=128end if2930up_page=curpage-131down_page=curpage+13233splitpage_html="共$rscount$条记录&nbsp;$pagesize$条/页&nbsp;第$curpage$/$pagenum$页&nbsp;"34splitpage_html=replace(splitpage_html,"$rscount$",rscount)35splitpage_html=replace(splitpage_html,"$pagesize$",pagesize)36splitpage_html=replace(splitpage_html,"$curpage$",curpage)37splitpage_html=replace(splitpage_html,"$pagenum$",pagenum)3839splitpage_html=splitpage_html & "<a href="" & addr_url & first_page & "">首页</a>&nbsp;"40if curpage>1 then41  splitpage_html=splitpage_html & "<a href="" & addr_url & up_page & "">上一页</a>&nbsp;"42else43  splitpage_html=splitpage_html & "上一页&nbsp;"44end if4546dim fbegin,fend47if shownum mod 2 then48  show_front_num=int(shownum/2)49  show_back_num=int(shownum/2)50else51  show_front_num=int(shownum/2)-152  show_back_num=int(shownum/2)53end if54if curpage-1<show_front_num then55  fbegin=156  fend=shownum57elseif curpage+show_back_num>pagenum then58  fend=pagenum59  fbegin=pagenum-shownum+160else61  fbegin=curpage-show_front_num62  fend=curpage+show_back_num63end if64for idx=fbegin to fend65  if curpage-idx=0 then66    splitpage_html=splitpage_html & "<b>" & idx & "</b>&nbsp;"67  else68    splitpage_html=splitpage_html & "<a href="" & addr_url & idx & "">" & idx & "</a>&nbsp;"69  end if70next7172if pagenum-curpage>0 then73  splitpage_html=splitpage_html & "<a href="" & addr_url & down_page & "">下一页</a>&nbsp;"74else75  splitpage_html=splitpage_html & "下一页&nbsp;"76end if77splitpage_html=splitpage_html & "<a href="" & addr_url & last_page & "">尾页</a>&nbsp;"7879splitpage_html=splitpage_html & "跳转到&nbsp;"80splitpage_html=splitpage_html & "<select onChange=window.location.href=this.options[this.selectedIndex].value>"81For idx=1 To pagenum82  If curpage-idx=0 Then83    splitpage_html=splitpage_html & "<option value="" & addr_url & idx & "" selected>第" & idx & "页</option>"84  Else85    splitpage_html=splitpage_html & "<option value="" & addr_url & idx & "">第" & idx & "页</option>"86  End if87Next88splitpage_html=splitpage_html & "</select>"8990response.Write splitpage_html9192End Function93%>