当前位置:萝卜系统下载站 > 技术开发教程 > 详细页面

一个分页的类

一个分页的类

更新时间:2021-01-25 文章作者:未知 信息来源:网络 阅读次数:

<%
'-------------------------------------------
' 接口:
' 属性:
' a、tip:项目提示(如,“篇文章”);
' b、tablewidth:跳转页导航宽度
' 方法:
' a、SetRsObj()方法:设置ADODB.RECORDSET对象;
' b、ControlPages()方法:显示跳转页导航(“上一页”、“下一页”……)
' c、SetParams()方法:设置参数数组
' 范例:
' dim params(1,1)
' params(0,0) = "query" : params(0,1) = request("query")
' params(1,0) = "keyword" : params(1,1) = request("keyword")
' 该数组主要传递查询关键字(如字段关键字、时间等),第一维是参数名称,第二维是参数值:如下http://…….asp?topage=2&query=yes&keyword=a
'
' set PageCtrl = new CPageCtrl
' PageCtrl.SetRsObj (RS) '设置ADODB.RECORDSET对象,其中RS是已建立好的ADODB.RECORDSET,即所要控制的记录集
' PageCtrl.tip = "篇文章"
' PageCtrl.tablewidth = "100%"
' PageCtrl.SetParams params

' PageCtrl.DimPage (15) '分页定义,每页15条记录
' PageCtrl.ControlPages() '显示跳转页导航
'-------------------------------------------

class CPageCtrl
public tip, tablewidth
private setobjflag, rsobj, pages, record, setparamsflag, current, topage
dim params()
'----------------------------------
private sub class_initialize()
tablewidth = "100%"
end sub
'---------------------------------
public function SetRsObj(obj)
set rsobj = obj
setobjflage = true
end function
'----------------------------------

private function chksetobj()
if setobjflage <> true then response.End()
end function
'----------------------------------

public function DimPage(psize) '分页定义
dim topages
topage = request("topage")

if not rsobj.eof then

if not isempty(psize) then
rsobj.pagesize = cint(psize) '定义每页显示数目
else
rsobj.pagesize = rsobj.recordcount
end if

pages = rsobj.pagecount
record = rsobj.recordcount

if topage <> empty then
topages = CInt(topage)

if topage <= 1 then
rsobj.absolutepage = 1
elseif topages >= pages then
rsobj.absolutepage = pages
else
rsobj.absolutepage = topages
end if
end if

current = rsobj.absolutepage
end if

end function
'----------------------------------

public function SetParams(arrParams())
params = arrParams
setparamsflag = true
end function

'----------------------------------

public function controlpages()
dim url

url = "http://" & request.ServerVariables("HTTP_HOST") & request.ServerVariables("URL")

if setparamsflag = true then
row = ubound(params,1)
col = ubound(params,2)
if col <> 1 then
exit function
end if

for i = 0 to row
if params(i,0) <> empty then
condition = condition & "&" & params(i,0) & "=" & params(i,1)
'生成参数
end if
next
end if

response.write "<table width='" & tablewidth & "' border='0' cellspacing='0' cellpadding='0'>"
response.write "<form action='" & url & "' method='post'>"
response.write "<tr> "
response.write "<td height='20'>&nbsp;目前共有 <font color='red'><b>" & record & "</b></font> "& tip & "&nbsp;当前分页状况 <font color='red'><b>" & current & "/" & pages & "</b></font></td>"

if current <> 1 then
response.write "<td width='40' align='center' height='20'>"
response.write "<a href='" & url & "?topage=1" & condition & "'>首 页</a>"
response.write "</td>"
response.write "<td width='44' align='center' height='20'>"
response.write "<a href='" & url & "?topage=" & current-1 & condition & "'>上一页</a>"
response.write "</td>"
else
response.write "<td width='40' align='center' height='20'>"
response.write "<font color='#999999'>首 页</font>"
response.write "</td>"
response.write "<td width='44' align='center' height='20'>"
response.write "<font color='#999999'>上一页</font>"
response.write "</td>"
end if

if current <> pages then
response.write "<td width='44' align='center' height='20'>"
response.write "<a href='" & url & "?topage=" & current+1 & condition & "'>下一页</a>"
response.write "</td>"
response.write "<td width='40' align='center' height='20'>"
response.write "<a href='" & url & "?topage=" & pages & condition & "'>尾 页</a>"
response.write "</td>"
else
response.write "<td width='44' align='center' height='20'>"
response.write "<font color='#999999'>下一页</font>"
response.write "</td>"
response.write "<td width='40' align='center' height='20'>"
response.write "<font color='#999999'>尾 页</font>"
response.write "</td>"
end if

response.write "<td>"
response.write "<input type='text' name='topage' size='4' style='BACKGROUND-COLOR: #ffffff; BORDER-BOTTOM: #a0a0a0 1px solid; BORDER-LEFT: #a0a0a0 1px solid; BORDER-RIGHT: #a0a0a0 1px solid; BORDER-TOP: #a0a0a0 1px solid; FONT-SIZE: 12px'>"
response.write "</td>"
response.write "</tr>"
response.write "</form>"
response.write ""

end function
end class
%>

温馨提示:喜欢本站的话,请收藏一下本站!

本类教程下载

系统下载排行

网站地图xml | 网站地图html