怎样实现跨页多选

wuruijuan 2008-03-17 04:02:23
我的是一个框架,就是点左边的一个按钮调用action,把结果集分页显示到右边框架里。现在是怎样点下一页时把上一页选的值存起来
...全文
533 21 打赏 收藏 转发到动态 举报
写回复
用AI写文章
21 条回复
切换为时间正序
请发表友善的回复…
发表回复
ljm1227134894 2012-10-25
  • 打赏
  • 举报
回复
同样的问题,楼主是如何解决的?
gohands 2008-04-02
  • 打赏
  • 举报
回复
[Quote=引用 8 楼 wuruijuan 的回复:]
下一页的链接地址不是xxx.jsp 呀。而是xxx.do?pageCode=1,2,3......这样的
[/Quote]
使用链接(get)而不是提交(post)方式提交时,是无法获取画面上checkbox的内容的,
除非在连接时把checkbox选择的结果加上去(麻烦啊!方法一)
因为没有提交,那就有了方法二:使用ajax,在提交前先把checkbox的内容提交到服务器上去再说!!

Frank1982 2008-03-17
  • 打赏
  • 举报
回复
使用session管理。

在前一页使用:
request.getSession().setAttribute(Constants.START_PASSWORD, theForm.getStartPassword());

后一页的action里面使用:
String startPassword = (String) request.getSession().getAttribute(Constants.START_PASSWORD);

在最后confirm以后记着使用:
request.getSession().removeAttribute(Constants.START_PASSWORD);

给楼主一个思路。只要Session在timeout时间之内,所有的值都是保存的
yuanjianbin 2008-03-17
  • 打赏
  • 举报
回复
你分页的数据量有多大?如果不太大就放在一个页面得了,省得麻烦。

如果确实是海量的数据,而且保存工作是在最后一页执行,我建议你采用9楼的建议。那么你在每一次翻页工作其实就是一次提交的过程,这里你要在对应的Action中把对应的值放到Map中,再用session管理,最后保存后从session移除Map对象,这个方案应该可行。

如果你每一页都要可以保存,那我觉得,这个问题就没有讨论的必要了。下一页有没有那些数据已经没有关系了。就算真的需要,也可以从数据库取。
wuruijuan 2008-03-17
  • 打赏
  • 举报
回复
点击下一页,或尾页,或是上一页没有数据提交啊,是总体的一块才提交数据的,翻页的时候没有提交数据,一直到用户选完了一块点提交的按钮呀
yyb0815 2008-03-17
  • 打赏
  • 举报
回复
呵呵,选中后,点击下一页,或尾页,或是上一页,这时候不是有数据提交吗?这样就可以把选中的数据存到session中了啊!
但每次操作都会存入被选中的项,也有可能重复出现,这时只要保持数据的唯一性就可以了!
wuruijuan 2008-03-17
  • 打赏
  • 举报
回复
我的分页是在分页页面调用的一个分页类,把查出来的list放入类里的哪个方法分的页,本人愚昧,还忘指教啊 <%
ArrayList userlist=(ArrayList)request.getAttribute("list");

//用于分页显示与分页类的调用,放置在需要分页的页面
String pageCode=request.getParameter("pageCode");
if(pageCode==null){
pageCode="1";

}
Vector v =pb.getPerPageRecordes(userlist,10,pageCode,"/Test/noEmailUser.do");
if(request.getAttribute("pb")!=null){
request.removeAttribute("pb");

}
request.setAttribute("pb",pb);

Iterator it=v.iterator();

//Iterator it=userlist.iterator();

while(it.hasNext()){
NoEmailUserBean bean=(NoEmailUserBean) it.next();

%>
numen_wlm 2008-03-17
  • 打赏
  • 举报
回复
我可以通过js取到客户端所选的值我该怎么保存到session里呢?
===================================================
表告诉我你没用过Session,也表告诉我你分页是一次查询全取出来,在client端用js分页了。
wuruijuan 2008-03-17
  • 打赏
  • 举报
回复
不是很明白呀,谁有没有个例子贴出来我看一下好吗
goldlive_8888 2008-03-17
  • 打赏
  • 举报
回复
把右边选择出的数据放入到左边框架的一个变量中,javascript可以跨框架操作数据,如父框架对子框架操作,子框架对子框架操作等。
wuruijuan 2008-03-17
  • 打赏
  • 举报
回复
我可以通过js取到客户端所选的值我该怎么保存到session里呢?

<SCRIPT language="javascript">
function check(){
var a=document.getElementsByName("checkboxlist");//checkbox的id
var b=[];
for(var i=0; i<a.length; i++) {
if(a[i].checked) {
b.push(a[i].value);

}
}
return b;

}
</script>
numen_wlm 2008-03-17
  • 打赏
  • 举报
回复
・HashMap:
key -> page
value -> List of Checked values

・put it into session

・get it from session when submit
wuruijuan 2008-03-17
  • 打赏
  • 举报
回复
下一页的链接地址不是xxx.jsp 呀。而是xxx.do?pageCode=1,2,3......这样的
wuruijuan 2008-03-17
  • 打赏
  • 举报
回复
2楼的:我的分页显示的页面呈现都是checkbox多选框啊,好比是在第一页选择几个,然后调到下一页选几个,最后再提交,问题是怎么保存其他页多选的值呢???
zsq007zsq007 2008-03-17
  • 打赏
  • 举报
回复
存session 但不同意 ls的发送请求给服务器,响应太慢!!不好!
chjx1982 2008-03-17
  • 打赏
  • 举报
回复
把id号保存起来,然后在下一页用隐藏字段得到这写id,不是得到了所有的id好了吗?这不就能选到上一页了.
wangjiajuan 2008-03-17
  • 打赏
  • 举报
回复
点一下,然后发送请求给服务器,(包含选中的那些数据),然后服务器将这些数据放在新的请求中,然后返回到下一个页面,其中用隐藏域加el表达式放到下一个页面中,即可。


不过,如果只放选中的id什么的,倒不如直接放到session中,那样也面会好写些。
EdifierX 2008-03-17
  • 打赏
  • 举报
回复
在下一页用hidden来保存你上个页面传来的值
duzhonghua 2008-03-17
  • 打赏
  • 举报
回复
分页显示 和checkbox 有关么, 智商低,看不懂你的题目
wuruijuan 2008-03-17
  • 打赏
  • 举报
回复
很急,大家帮帮我啊!!是checkbox多选的

81,091

社区成员

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

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