我是创始人黄欢内裤:ASP分页问题,点"下一页"没有反应,仍在第一页,这是为什么?

来源:百度文库 编辑:高校问答 时间:2024/05/05 09:51:38
以下是代码,请高手帮的看看错在哪里了?先谢了!
<%
sql7="select ....."
set rs=server.CreateObject("adodb.recordset")
rs.open sql,con,1,2
i=2
rs.pagesize=i
pageno=request.QueryString("pageno")
if pageno="" or pageno<1 or pageno>rs.pagecount then pageno=1
rs.absolutepage=pageno
do while rs.eof=false and i>0
%>
<table><tr><td><%=rs("id")%></td></tr></table>

<%
rs.movenext
i=i-1
loop
%>

<table width="760" height="34" border="0" align="center" cellpadding="0" cellspacing="0" bgcolor="#CCFFFF" class="aa">
<tr>
<td width="218" height="25" class="STYLE1"><div align="center" class="STYLE1">
第<%=pageno%>页 共<%=rs.pagecount%>页
</div></td>
<td width="374" class="STYLE1"><div align="center" class="STYLE1">
<%
if pageno=1 then
response.Write("首页 上页 <a href=temp.asp?pageno="&pageno+1&">下页</a> <a href=temp.asp?pageno="&rs.pagecount&">末页</a>")
else
if pageno=rs.pagecount then
response.Write("<a href=temp.asp?pageno=1>首页</a> <a href=temp.asp?pageno="&pageno-1&">上页</a> 下页 末页")
else
response.Write("<a href=temp.asp?pageno=1>首页</a> <a href=temp.asp?pageno="&pageno-1&">上页</a> <a href=temp.asp?pageno="&pageno+1&">下页</a> <a href=temp.asp?pageno="&rs.pagecount&">末页</a>")
end if
end if
%>
</div></td>
</tr>
</table>
郁闷,我要说明的,pageno在提交后可以得到值,也就是说,点“下一页”之后,pageno值的增加没有问题,(地址栏是也是"aaaa.asp?pageno=2"),关键的问题是下面这几句代码有错(问题很可能出在rs.open sql,con,1,2 或rs.absolutepage=pageno 两句上),有高手指点吗:
rs.open sql,con,1,2
i=2
rs.pagesize=i
pageno=request.QueryString("pageno")
if pageno="" or pageno<1 or pageno>rs.pagecount then pageno=1
rs.absolutepage=pageno

我也曾遇到过这种问题,ASP对数字的处理能力不太好,
你用cint(pageno)或cint(pageno+1)转换成数字型的看看。
如果可以发附件就好了,这种小问题应该很快可以调试好。

if pageno=1 then
response.Write("首页 上页 <a href=temp.asp?pageno="&(pageno+1)&">下页</a> <a href=temp.asp?pageno="&rs.pagecount&">末页</a>")
else
if pageno=rs.pagecount then
response.Write("<a href=temp.asp?pageno=1>首页</a> <a href=temp.asp?pageno="&(pageno-1)&">上页</a> 下页 末页")
else
response.Write("<a href=temp.asp?pageno=1>首页</a> <a href=temp.asp?pageno="&(pageno-1)&">上页</a> <a href=temp.asp?pageno="&(pageno+1)&">下页</a> <a href=temp.asp?pageno="&rs.pagecount&">末页</a>")
end if
end if

有算术表达式的时候记得加上括号..^_^

response.Write("首页 上页 <a href=temp.asp?pageno="&pageno+1&">下页</a> <a href=temp.asp?pageno="&rs.pagecount&">末页</a>")

中的="&pageno+1&" 算什么?&&位置不对吧

我一般用这种邢式不会出错.你可以试一试.
<%if page-1>0 then%>
<a href="kcgl.asp?page=<%=page-1%>" class="r2">上一页</a>
<%else%>
<font color=666666>上一页</font>
<%end if%>

<%if page+1<=totalpage then%>
<a href="cpgl.asp?page=<%=page+1%>" class="r2">下一页</a>
<%else%>
<font color=666666>下一页</font>
<%end if%>