'----------------------------------------------------
'目的: 实现分页(rs已经为Recordset对象)
'输入: numPage:第几页
' intPage:每页显示的信息条数
'传址: 无
'返回: 无
'输出: 无
'备注: 用于记录集的分页显示
'用法: Call setPage(2,10)
'----------------------------------------------------
Sub setPage(numPage,intPage)
'lngPageNo为主程序已定义的页码变量
'每页显示的信息条数
if IsNumeric(intPage) and len(intPage) > 0 then
rs.PageSize = CLng(intPage)
else
rs.PageSize = 10 '默认每页10条
end if
'第几页信息
if IsNumeric(numPage) and len(numPage) > 0 then
if CLng(numPage) < 1 then
rs.absolutepage = 1
lngPageNo = 1
elseif CLng(numPage) > rs.PageCount then
rs.absolutepage = rs.PageCount
lngPageNo = rs.PageCount
else
rs.absolutepage = CLng(numPage)
lngPageNo = CLng(numPage)
end if
else
rs.absolutepage = 1
lngPageNo = 1
end if
End Sub
'----------------------------------------------------
'目的: 分页显示的分页信息,包括分页的其他参数(rs已经为Recordset对象,已经实现分页的情况下)
'输入: numPage(所在页) ,strParameters(其他参数)
'传址: 无
'返回: 无
'输出: 无
'备注: 显示记录集的分页情况,和页面的连接
'用法: getPage
'----------------------------------------------------
Sub getPageInfo(numPage,strParameters)
dim iPage
dim strPageURL
strPageURL = Request.ServerVariables("PATH_INFO")
'如果有其他参数
if len(strParameters) > 0 then
strParameters = strParameters & "&"
end if
strParameters = "?" & strParameters
strPageURl = strPageURl & strParameters
'输出记录集情况
response.write "共<strong>" &rs.RecordCount& "</strong>条记录,"
response.write "这是第<strong>" &numPage& "</strong>页,"
response.write "共<strong>" &rs.Pagecount& "</strong>页。"
'输出连接情况
if numPage > 1 then
response.write "<a href=" &strPageURL& "page=1>第一页</a>"
response.write " "
response.write "<a href=" &strPageURL& "page=" &numPage - 1& ">上一页</a>"
else
response.write "第一页 上一页"
end if
response.write " "
if numPage < rs.PageCount then
response.write "<a href=" &strPageURL& "page=" &numPage + 1& ">下一页</a>"
response.write " "
response.write "<a href=" &strPageURL& "page=" &rs.PageCount& ">最后一页</a>"
else
response.write "下一页 最后一页"
end if
response.write " "
'输出选页菜单
response.write "<select name=page onchange=" &Chr(34)& "javascriipt:window.location.href='" &strPageURL& "page='+this.options[selectedIndex].value" &Chr(34)& "+>"
for iPage = 1 to rs.PageCount
response.write "<option value=" &iPage
if CInt(iPage) = CInt(numPage) then response.write " selected"
response.write ">" &iPage& "</option>"
next
response.write "</select>"
End Sub