|
函数如下:
预览:http://www.2282600.cn/houtai/page.asp
支持自定义显示页码的个数,并首先会保证页码的个数
支持自定义上一页下一页字符
支持是否显示数据分页信息,如总共多少页
支持是否下拉列表转向分页
支持是否输入框转向分页,自动判断数字
支持自定义接收页码变量名,默认为page
<%
sql=""
Set Rs=Server.CreateObject("Adodb.RecordSet")
Rs.open Sql,TXconn,1,1
If Rs.RecordCount Then
TopNum=10 '定义每页显示多少条
QName="Page" '定义接收页码的变量名
Page=Request.QueryString(QName)
If Page="" Then
Page=1
ElseIf Not IsNumeric(Page) Then
Page=1
Else
Page=Page+0
End if
MaxPage=Fix(Rs.RecordCount/TopNum)
If (Rs.RecordCount mod TopNum) Then MaxPage=MaxPage+1
If Page>MaxPage Then Page=MaxPage
Rs.PageSize=TopNum
Rs.AbsolutePage = Page
For i=1 to TopNum
If Rs.bof or Rs.eof Then Exit For
Response.write(i&"<br />")
Rs.MoveNext
Next
Else
Response.write("no data")
End If
%>
<%=TXPage(Rs.RecordCount,TopNum,2,0,0,0,QName)%>
<%
Function TXPage(Totals,PerNums,PageNum,Info,List,Input,QName)
'分页函数(所有数量,每页显示记录数,页码个数,页码统计信息,下拉列表,输入框,页码变量名[为空则为Page])
Dim strBegin,strBefore,strPrev,strNext,strAfter,strEnd,BeginNum,EndNum,Page,Pages,Url
strBegin="<font face=""webdings"">9</font>" '定义第一页按钮显示样式
strBefore="<font face=""webdings"">7</font>" '定义上几页按钮显示样式
strPrev="<font face=""webdings"">3</font>" '定义前一页按钮显示样式
strNext="<font face=""webdings"">4</font>" '定义下一页按钮显示样式
strAfter="<font face=""webdings"">8</font>" '定义后几页按钮显示样式
strEnd="<font face=""webdings"">:</font>" '定义最后一页按钮显示样式
PageNum=Fix(PageNum/2)
If QName="" Then QName="Page"
Page=Request.QueryString(QName)
Url="?"
Dim Query,str,i
Query=Split(Request.ServerVariables("QUERY_STRING"),"&")
For i=0 to Ubound(Query)
Str=Split(Query(i),"=")
If Lcase(Str(0))<>Lcase(QName) Then Url=Url&Str(0)&"="&Str(1)&"&"
Next
PerNums=PerNums+0
If Totals mod PerNums Then
Pages=Fix(Totals/PerNums)+1
Else
Pages=Fix(Totals/PerNums)
End If
If IsNumeric(Page) Then
Page=Page+0
If Page>Pages Then
Page=Pages
ElseIf Page<1 Then
Page=1
End If
Else
Page=1
End If
TXPage=""
BeginNum=Page-PageNum
EndNum=Page+PageNum
If BeginNum<1 Then BeginNum=1
If EndNum-BeginNum<PageNum*2 Then EndNum=BeginNum+PageNum*2
If EndNum>Pages Then EndNum=Pages
If EndNum-BeginNum<PageNum*2 Then BeginNum=EndNum-PageNum*2
If BeginNum<1 Then BeginNum=1
If BeginNum>PageNum*2 and PageNum>1 Then TXPage=TXPage&"<a href="""&Url&QName&"="&Page-PageNum*2&"""
Title=""前"&PageNum*2&"页"">"&strBefore&"</a>"
If BeginNum>1 Then TXPage="<a href="""&Url&QName&"=1"" Title=""第一页"">"&strBegin&"</a>"&TXPage&"<a
href="""&Url&QName&"="&Page-1&""" Title=""上一页"">"&strPrev&"</a>.."
For i=BeginNum to EndNum
If i=Page Then
TXPage=TXPage&"[<span style=""cursor:pointer;font-weight:bold;"">"&i&"</span>]"
Else
TXPage=TXPage&"[<a href="""&Url&QName&"="&i&""">"&i&"</a>]"
End If
Next
If EndNum<Pages Then TXPage=TXPage&"..<a href="""&Url&QName&"="&Page+1&""" Title=""下一页"">"&strNext&"</a>"
If EndNum<Pages-PageNum*2 and PageNum>1 Then TXPage=TXPage&"<a href="""&Url&QName&"="&Page+PageNum*2&""" Title=""
后"&PageNum*2&"页"">"&strAfter&"</a>"
If EndNum<Pages Then TXPage=TXPage&"<a href="""&Url&QName&"="&Pages&""" Title=""最末页"">"&strEnd&"</a>"
If Info Then TXPage=TXPage&" 页次:"&Page&"/"&Pages&"页 共"&Totals&"条 "&PerNums&"条/页"
If List Then
TXPage=TXPage&" <select onChange=""javascript:window.location.href='"&Url&QName&"='+this.options
[this.selectedIndex].innerText;"">"
For i=1 to Pages
TXPage=TXPage&"<option"
If i=Page Then TXPage=TXPage&" selected"
TXPage=TXPage&">"&i&"</option>"
Next
TXPage=TXPage&"</select>"
End If
If Input Then TXPage=TXPage&" <input type=""text"" size=""1"" Title=""输入号码后,按回车即可""
style=""overflow:visible;ime-mode:disabled;"" onkeydown=""javascript:if
('.8.13.37.39.46.48.49.50.51.52.53.54.55.56.57.96.97.98.99.100.101.102.103.104.105.'.indexOf('.'+event.keyCode+'.')>=0){if
(event.keyCode==13){window.location.href='"&Url&QName&"='+value;}}else{return false;}"">"
End Function
%>
问题如下:
就是如何如何调用啊~
是不是(我的表名是 news, 题目是 news_head)
把
<%
sql=""
这改成
<!--#include file="conn.asp"-->
<%
exec="select * from news order by news_time desc "
set rs=server.createobject("adodb.recordset")
rs.open exec,conn,1,1
If Rs.RecordCount Then
TopNum=10 '定义每页显示多少条
QName="Page" '定义接收页码的变量名
..........
..........
(event.keyCode==13){window.location.href='"&Url&QName&"='+value;}}else{return false;}"">"
End Function
%>
可是新闻题目列表news_head写在哪,该如何以列表形式显示出来啊? 请求大家的帮助~ |
|