web开发中经常会有这种情况,在一个主页面中包含侧边导航菜单和iframe,点击菜单项,
对应页面会在iframe中显示,整个页面不会刷新。
但是如 果设置了会话Session,在会话过期后再操作会自动redirect重定向到登录页面,经常会出现在session过期后,再点击菜单项,
登录页面显 示在iframe中而非显示在当前窗口的情况。
上面的是复制转发的内容。
1.未修改session过期。在页面刷新。登陆页面显示在了当前iframe里面如图
在修改了login.jsp页面js代码后。页面跳转直接跳出了iframe。使用的是target属性的参数。
属性值
值 | 描述 |
---|---|
_blank | 在新窗口中打开被链接文档。 |
_self | 默认。在相同的框架中打开被链接文档。 |
_parent | 在父框架集中打开被链接文档。 |
_top | 在整个窗口中打开被链接文档。 |
framename | 在指定的框架中打开被链接文档。 |
默认为self。所以session过去。刷新只在相同框架中打开了登陆页面。
JS代码如下:只需要在LOGIN.JSP页面添加如下代码即可实现下图的效果。
if(window != top){
top.location.href=location.href;
}
2.修改以后。上图的session过期。刷新页面。跳转的登陆页面即可重新在当前页面打开。并跳出iframe。
以上就是我需要的效果。不知道有没有和我一样遇到这样的问题的。很简单吧。
个人微博 http://weibo.com/u/2205636212
个人博客 http://my.oschina.net/xshuai/blog
个人联盟 http://www.bengbeng.com/?sid=687095