先用window.open打开1.aspx,1.aspx中用window.showModalDialog打开2.aspx,2.aspx中用window.open打开3.aspx,那么在3.aspx中取不到Session中的值。
于是我先做了一个default.aspx页面,向Session中存入值,在后面的三个页面中,分别去取Session中的值。三个页面的打开方式不一样,共6钟情况,测试结果如下:
Open/modal/open指页面1,2,3的打开方式,用open打开页面1,页面1用modal打开页面2,页面2用open打开页面3。 “Y”表示可以取到Session中存入的值;“N”表示不能取到Session中存入的值。 ?? 测试环境win2000,ie6.0+sp1,多数情况下会出现;win2003,ie6.0+sp2,总是出现。 ??modal打开页面后,在打开的页面再open打开新页面时,在新开的页面总会出现Session丢失的问题,所以,在脚本中使用window.showModalDialog打开页面后慎用window.open打开页面,会导致Session取不到。大家可以测试一下。 原因:modal打开的页面再用open打开另一个页面时,ie认为这是新开了一个进程,cookie将统统失效。 解决方法:
JavaScript语言: Parent.asp
<html> ? ? ? ?
JavaScript语言: Modal.asp
<html>
<body> Modal Page<br> <span>Session ID : <%=Session.SessionID%></span><br> <button onclick= ??? "dialogArguments.window.open('page1.asp')"> Open Page 1 (workaround) </button><br> <button onclick= ??? "window.open('page1.asp')"> Open Page 1 (problem) </button> </body> </html> ?
HTML语言: Page1.asp
<html>
<body> Page 1<br> <span>Session ID : <%=Session.SessionID%></span> </body> </html> |
详细解决方案
showModalDialog罗致Session失效
热度:359 发布时间:2012-11-23 22:54:33.0
转自:http://hi.baidu.com/dorachopper/blog/item/227e292acdf0409d023bf67b.html
相关解决方案
- hibernate 连接 oracle session 有关问题
- Servlet Session 购物车,该怎么解决
- Servlet Session 购物车解决办法
- ssh多数据库配置 如何get session
- 急【史无前例?】奇怪有关问题,劳烦进.IE8 showModalDialog 里面的select 点几次才能点开
- hibernate中Query query=session.createQuery的有关问题
- CAPTCHA 模块中 ajax form 导致CAPTCHA session reuse attack detected异常,解决方法
- session 覆盖的有关问题 求高手
- Could not deserialize session data解决方法
- response.write(session.getAttribute("BranchName")提示异常
- JSP上if(trim(session.getAttribute("grade"))== "0") 多谢!
- jsp session 过期提示有关问题
- session.invalidate()无效解决办法
- null id in com.bsw.gms.hibernate.pojo.Score entry (don't flush the Session after an exception occurs,该怎么解决
- struts2关于request,session,application传值与显示的有关问题
- java ssh session NullPointerException,该怎么处理
- spring2.0+hibernate3.2中,oracle中产生大量的inactive session,怎么解决
- window.showmodaldialog()苹果浏览器不支持?50分在线求解!该如何处理
- session 登录有关问题
- Cannot create a session after the response has been committed,该怎么解决
- org.hibernate.HibernateException: No Session found for current thread解决办法
- Cannot create a session after the response has been committed解决办法
- Struts2 的 Action 类里如何创建 session request response out 对象
- eclipse+jboss开发一个十分简单的远程无状态 Session Bean 时遇到的有关问题
- spring aop关于获取 session 有关问题
- Session 什么时候结束会话,怎么判断非正常登录
- WEB session 有关问题
- 一个纠结的有关问题-session
- 使用 StateServer 保存 Session,哪位高手用过啊
- Session.Remove()为啥不起作用