对话框传值至服务器处理,返回主页面不刷新

wjf8882300 2009-08-03 12:45:49
一个jsp页面A,在A里面弹出一个对话框B(showDialog),在B里面做些服务器端得操作,比如上传文件,上传完后,关闭对话框B,返回到A页面。
问题:我现在把B里面的值上传至一个Servlet进行处理,处理之后Servlet需要页面跳转,如果跳回A,则会刷新A,而我不想让它刷新A;如果跳转到其他页面,感觉有点多余。问如何在Servlet处理之后,不让页面跳转。还有,在servlet处理之后,我把某些值放在一个session里面,进行页面跳转的时候,接收页面可以检测到session里的值,但是当我再次进行另一个servlet操作时,这个session值就没有了(如果当前只有A页面则存在,如果在A之前打开了其他页面,则这个值就没有了)。session没有设置时间域,应该是整个程序范围。
说了比较乱,不知道大家能不能看懂,谢谢各位了。
...全文
184 9 打赏 收藏 转发到动态 举报
写回复
用AI写文章
9 条回复
切换为时间正序
请发表友善的回复…
发表回复
zl3450341 2009-08-04
  • 打赏
  • 举报
回复
呵呵 楼主解决了啊

来接点分咯
wjf8882300 2009-08-04
  • 打赏
  • 举报
回复
[Quote=引用 1 楼 johnson_hong 的回复:]
你的b页面提交一个文件,到servlet,servlet跳转到一个新的页面,这个页面什么也不做,就一个关闭的动作
<html>
<body  onload="window.close()">
</body>
</html>
这样弹出页面就关闭了,a页面是没有任何动作的
[/Quote]
我原来是这样做的,但是页面会闪一下,让人感觉不好。
wjf8882300 2009-08-04
  • 打赏
  • 举报
回复
谢谢各位回答,问题已经解决了。
我原来是在对话框提交到servlet后就关闭了,现在改成提交到servlet时不关闭,等servlet处理完之后,输出一个关闭对话框的js命令,这样页面同样不刷新。
关于ajax是不能实现文件上传的,隐藏的IFRAME可以实现,也是无刷新的。
关于session,我估计是原来我要跳转的页面是对话框,但对话框已经关闭了。看session原理的时候,好像在客户端和服务器端都要创建一个sessionid,而对话框关闭了,则可能导致客户端的那个id丢失,这样可能导致了session的丢失。不知道,大家有没有更好的解释。
冰木子星 2009-08-04
  • 打赏
  • 举报
回复
来这里看看
fireelf000 2009-08-03
  • 打赏
  • 举报
回复
想要页面无刷新就需要用到ajax了
robyjeffding 2009-08-03
  • 打赏
  • 举报
回复
把B里面的操作用ajax来实现,就不需要由servlet来转发了,接收到数据之后可以关闭B,A页面是不会刷新的;至于session,只要不关闭浏览器或者新开,保存的数据应该在当前会话中都可以取到的,你看你是不是写错了
dxl3811051 2009-08-03
  • 打赏
  • 举报
回复
对啊 你如果用隐藏就行了 你用一个隐藏的IFRAME提交的话可以实现页面不刷新。
长公子冰 2009-08-03
  • 打赏
  • 举报
回复
页面刷新肯定是你用它向服务器提交请求了,服务器的Servlet给你返回了页面。但如如果你用一个隐藏的IFRAME提交的话可以实现页面不刷新。
Johnson_Hong 2009-08-03
  • 打赏
  • 举报
回复
你的b页面提交一个文件,到servlet,servlet跳转到一个新的页面,这个页面什么也不做,就一个关闭的动作
<html>
<body onload="window.close()">
</body>
</html>
这样弹出页面就关闭了,a页面是没有任何动作的

81,092

社区成员

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

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