简单的页面参数传递问题!说不定你一看就ok了

dennyjava 2004-06-11 05:01:21
各位大虾:
今遇到这样个问题:
在page1.jsp中有一个checkbox,name=ck,值分别有1,2,3。
当page1.jsp的参数通过form传到page2.jsp中时,jsp会把用户所选的ck当成一个ck数组。如 String[] param=request.getParameterValues("ck");然后通过对param的处理来确定用户所选的ck值。
问题时,我要在page2.jsp上进行分页处理,那么到第2页或其他页时,这个ck参数我该怎么传呢?
谢谢先!
...全文
215 20 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
20 条回复
切换为时间正序
请发表友善的回复…
发表回复
shine333 2004-06-15
  • 打赏
  • 举报
回复
<input type="hidden" name="name" value="<%= request.getParameter("name")%>">

这是让无状态的http, 来维持"有状态"的最原始但也是最有效的做法
dennyjava 2004-06-15
  • 打赏
  • 举报
回复
谢谢楼上各位得参与!
我的分页是用<a href=...>链结实现的,没有用form,所以<input type=hidden ...>的方式不行。
我用了“大个”的方法。
但minger214(minger)的问题还是值得我们去讨论的。
欢迎!!!
minger214 2004-06-15
  • 打赏
  • 举报
回复
说来说去其实问题就是在没有表单控件时如何来传递和接收一个数组!

“大个”提供的是用get传数组的方法,那么用post怎么来传递数组呢?
andy971024 2004-06-14
  • 打赏
  • 举报
回复
可以把想要达到的页面值在page2中设成隐藏属性,每次getparameter就行了
dennyjava 2004-06-14
  • 打赏
  • 举报
回复
谢谢啊,pagebean我还在研究,没有搞清楚
Forget0927 2004-06-12
  • 打赏
  • 举报
回复
给你看个Bean写的分页吧,自己参考:
1、
public class PageBean
{
public int curPage ; //当前是第几页
public int maxPage ; //一共有多少页
public int maxRowCount ; //一共有多少行
public int rowsPerPage=5 ;//每页多少行
public java.util.Vector data;
public PageBean()
{
}
public void countMaxPage() { //根据总行数计算总页数
if (this.maxRowCount % this.rowsPerPage==0){
this.maxPage = this.maxRowCount/this.rowsPerPage;
}else{
this.maxPage = this.maxRowCount/this.rowsPerPage + 1;
}
}
public Vector getResult()
{
return this.data;
}

public PageBean(PageBusiness pageBusiness)throws Exception
{
this.maxRowCount = pageBusiness.getAvailableCount(); //得到总行数
this.data = pageBusiness.getResult(); //得到要显示于本页的数据
this.countMaxPage(); //计算总页数
}
}
2、
public abstract class PageBusiness
{
java.util.Vector v;//要显示的信息。
/**
*获得所有记录的数量
*/
public abstract int getAvailableCount()throws Exception;
/**
*返回要显示的信息
*/
public java.util.Vector getResult()throws Exception
{
return v;
}
/**
*一个帮助方法,用于获得指定的表的记录数量
*/
protected final int getAvailableCountHelper(Connection conn ,String tableName)throws Exception
{
int ret=0;
Statement stmt=conn.createStatement();
String strSql="select count(*) from "+tableName;
ResultSet rset=stmt.executeQuery(strSql);
while(rset.next())
{
ret=rset.getInt(1);
}

return ret;
}
/**
*执行数据库操作,返回包含了指定页面信息的PageBean
*/
public abstract PageBean listData(String page)throws Exception;

}






javastar 2004-06-12
  • 打赏
  • 举报
回复
利用session和vector。将string数组的值放入vector中,然后将该vector放入session中,这样可以从其余页中得到其中的值。
dennyjava 2004-06-12
  • 打赏
  • 举报
回复
谢谢大个!
:)
shuqianlz 2004-06-12
  • 打赏
  • 举报
回复
checkbox的值在url中是这样的
http://......?ck=1&ck=2&ck=3.....
String[] param=request.getParameterValues("ck");
如果要传递参数可以这样:

<a href=page2.jsp?
<%
for(int i=0;i<param.length;i++){
out.print("ck="+param[0]+"&");
}
%>
>next page</a>
dennyjava 2004-06-12
  • 打赏
  • 举报
回复
help...
dennyjava 2004-06-12
  • 打赏
  • 举报
回复
up...
up...
up...
dennyjava 2004-06-12
  • 打赏
  • 举报
回复
能有更好的方法吗?不用session
江洋牛吧 2004-06-12
  • 打赏
  • 举报
回复
<a href=page2.jsp?pgparm=<%=对param的处理来确定用户所选的ck值%>>next page</a>
在页面中处理参数pgparm直接得到已经选过的checkbox值使用就可以了
另外你可以在每次提交的时候把参数放到session中。
liangzai6640459 2004-06-12
  • 打赏
  • 举报
回复
分页是由多种方法的,你可以先把所有的数据都先取出来,然后再把他们分页显示阿!
dennyjava 2004-06-11
  • 打赏
  • 举报
回复
大虾请帮忙啊
dennyjava 2004-06-11
  • 打赏
  • 举报
回复
help ...
up ...
dennyjava 2004-06-11
  • 打赏
  • 举报
回复
to umbrella1984(迈克尔·老鬼) :在page2.jsp的分页连结里怎么写参数啊?
<a href=page2.jsp?ck=<%request.getParameter("ck")%>>next page</a>
这样写不信啊,该如何写?请指点。

to: ecaol(孤单北半球)
用bean分页我还不会,能教教吗?
umbrella1984 2004-06-11
  • 打赏
  • 举报
回复
page2.jsp接了page1.jsp的参数,在page2.jsp的分页连接里也把参数传过去咯。
ecaol 2004-06-11
  • 打赏
  • 举报
回复
为啥不用bean呢?

81,116

社区成员

发帖
与我相关
我的任务
社区描述
Java Web 开发
社区管理员
  • Web 开发社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧