jsp 分页问题 提交搜索内容后分页显示只有第一页 ,第二页就不对了。怎么回事?

if(ToPage != null)
{
ShowPage = Integer.parseInt(ToPage);
if(ShowPage > PageCount)
{
ShowPage = PageCount;
}
else if(ShowPage <= 0)
{
ShowPage = 1;
}
}

rs.absolute((ShowPage-1)*PageSize+1);

%>
<h3>目前在第<font size = 4 color = red>

<%= ShowPage %></FONT>页, 共有
<FONT SIZE = 4 COLOR = red>
<%= PageCount %></FONT>页</H3>

<%
for(int i = 1; i <= PageSize; i++)
{
%>
<TABLE border=1 bordercolor=RoyalBlue bgcolor=LightBlue>
<TR><TD bgcolor=LightYellow width= 100>
<B>名称</B></TD>
<TD bgcolor=LightYellow width= 100>
<B>所属店</B></TD>
<TD bgcolor=LightYellow width= 100>
<B>价钱</B></TD>
</tr>
<tr>
<TD width= 100><B><%= rs.getString("名称") %>
</B></TD>

<TD width= 100><B><%= rs.getString("所属店") %>
</B></TD>

<TD width= 100><B><%= rs.getString("价钱") %>
</B></TD>
</TR>
</TABLE><BR>
<%

//将记录指标移至最后一笔记录之后
if(!rs.next()) //判断是否到达最后一笔记录
break; //跳出for循环
}

rs.close(); //关闭ResultSet对象
stmt.close(); //关闭Statement对象
con.close(); //关闭数据库链接对象
%>
<TABLE>
<TR valign=baseline align=center>
<%
//判断目前所在分页是否为第一页,
//不是则显示到第一页与上一页的超链接
if(ShowPage != 1)
{
//下面建立的各超链接将链接至自己,
//并将欲显示的分页以ToPage参数传递给自己
%>
<TD Width=150>
<A Href=pages.jsp?ToPage=<%= 1 %>>到第一页</A>
</TD>
<TD Width=150>
<A Href=pages.jsp?ToPage=<%= ShowPage - 1 %>>到上一页</A>
</TD>
<%
}

//判断目前所在分页是否为最后一页,
//不是则显示到最后一页与下一页的超链接
if(ShowPage != PageCount)
{
//下面建立的各超链接将链接至自己,
//并将欲显示的分页以ToPage参数传递自己
%>
<TD Width=150>
<A Href=pages.jsp?ToPage=<%= ShowPage + 1%>>到下一页</A>
</TD>
<TD Width=150>
<A Href=pages.jsp?ToPage=<%= PageCount %>>到最后一页</A>
</TD>
<%
}
%>
<TD Width=150>
<FORM action=pages.jsp method=get>

<!--
供用户输入欲查看页数的文字方块, 预设值为目前所在的分页,
当用户在此文字方块中完成数据输入后按下 Enter 即可将数据送出,
相当于按下Submit按钮, 因此此表单中将省略Submit按钮
-->
<INPUT type="text" name=ToPage style="HEIGHT: 25px; WIDTH: 40px"
value=<%= ShowPage%> > 页
</FORM></TD></TR>
</TABLE>
</CENTER>
</BODY>
</HTML>
是因为 s1,和s2 的值没有传递到第二个页面吗?

上个星期也遇到与你一样的问题

其实我们自己考虑不周的原因,平时一般点击“下一页”,只是把当前第几页传过去,而查找的内容没有传过去,当时不能显示我们想像的效果

所以:
1、当第一次查找时,记得一定也要把查找的内容传到页面
2、在点击“下一页”里(其它按钮也一样),要把查找的内容也传过去,如果没有,传个null也行;
3、在第二个页里,接收信息时判断一下查找的内容是否为空,从而进行是模糊查询还是列出所有信息,取得数据后,判断查找的内容如果不为空的话,再把查找的内容传到页面

这样就没有问题了

另外,代码写得缺乏可重用性
温馨提示:答案为网友推荐,仅供参考
第1个回答  2009-12-11
上面的代码没贴全?ToPage从哪儿得来?
相似回答