卡斯商学院好吗:asp分页代码问题

来源:百度文库 编辑:杭州交通信息网 时间:2024/05/05 20:31:05
dim n,k
if (totalPut mod MaxPerPage)=0 then
n= totalPut \ MaxPerPage
else
n= totalPut \ MaxPerPage + 1
end if%>
</FONT></FONT></P>
<P>PAGE <%=currentpage%> OF <%=n%> 共<%=rs.recordcount%> 纪录
<% k=currentPage
if k<>1 then
response.write "[<b>"+"<a href='index.asp?page=1'>首页</a></b>] "
response.write "[<b>"+"<a href='index.asp?page="+cstr(k-1)+"'>上一页</a></b>] "
else
Response.Write "[首页] [上一页]"
end if
if k<>n then
response.write "[<b>"+"<a href='index.asp?page="+cstr(k+1)+"'>下一页</a></b>] "
response.write "[<b>"+"<a href='index.asp?page="+cstr(n)+"'>尾页</a></b>] "
else
Response.Write "[下一页] [尾页]"
end if
%>

那个n为什么对应那个公式啊?为什么要这么算啊?还有没有别的算法实现该代码的效果啊。

''原理:使用recordset.absolutepage可写属性作页号跳转

pageNo=request("pageNo")&"" ''取查询页号
if not isNumeric(pageNo) then pageNo=1 ''防止范围超出
if pageNo=cInt(pageNo) ''类型转换

rs.open sqlText,conn,1,1
if rs.bof then
response.write("记录为空")
else
rs.pagesize=20 ''每页显示限制在20条
if pageNo>rs.pagecount then pageNo=rs.pagecount ''防止范围超出
rs.absolutePage=pageNo ''页号指针跳转到查询页
rsIndex=0 ''初始化记录计数
if rs.pagecount>1 then ''如果够一页,输出跳转链接
if pageNo=1 then ''如果跳转到首页则"首页 上一页"无效
response.write"<span class=""clGray"">首页 上一页</span> <a href=""?&pageNo="&(pageNo+1)&""">下一页</a> <a href=""?pageNo="&rs.pageCount&""">尾页</a>"
elseif pageNo=rs.pagecount then ''如果跳转到尾页则"下一页 尾页"无效
response.write"<a href=""?&pageNo=1"">首页</a> <a href=""?pageNo="&(pn-1)&""">上一页</a> <span class="clGray">下一页 尾页</span>"
else
response.write"<a href=""?&pageNo=1"">首页</a> <a href=""?pageNo="&(pn-1)&""">上一页</a> <a href=""?&pageNo="&(pageNo+1)&""">下一页</a> <a href=""?pageNo="&rs.pageCount&""">尾页</a>"
end if
end if
do while not rs.eof and rsIndex<20 '' 循环20次
rsIndex=rsIndex+1 ''记录计数
''处理输出
rs.movenext
loop
''此处可再次输出跳转链接
end if
rs.close