想必大家都做过这样的一个系统,系统是用struts2+spring+hibernate开发的,图的上面是一个iframe, name为left,左边是一个iframe,名字叫top,中间也是一个iframe,名字叫main,我现在的需求是:
现在的session的生命周期为半个小时,如果用户超过半个小时没有操作,那么session就失效了,
当用户点击main的iframe里面的任何列都会被struts2的拦截器所拦截
现在的问题是:拦截器拦截后,会跳转到login.jsp页面,但是只有名字为main的iframe的内容才会显示login.jsp,其他的iframe的内容没有变,就像这样我想直接是整个页面都变成login.jsp,像这样:应该怎样做呢?这样的需求应该很常见iframestruts2jspiframe跳转
我的流程是这样的:
当session失效的时候,用户再点击列表,即请求后台action,会被拦截器拦截,然后跳转到登录界面(login.jsp),问题是跳转到login.jsp之后,系统就出现第二个图的状况,我需要的是整个页面都跳转!
不直接跳到login.jsp 跳到一个空jsp,里面就一句话就行了<script>
parent.window.document.location.href='/login.jsp';
</script>
我现在从main的iframe里面通过action进行跳转,不管怎样跳转,都只是main的iframe里面变成跳转的页面,而top和left的没有变,而用window.parent的话,只能在js里面执行,看第一图上面的退出系统,就可以指定整个界面都跳转到login.jso
parent.location.href = '<%=path%>/login.jsp';
http://blog.csdn.net/qiaoshuai0920/article/details/7755261
用4楼的方法,结果上面的iframe可以跳转到login.jsp,并且是整个页面
但是放在main里面,还是只有main的iframe变了,
于是我弄成这样
window.parent.parent.location.href='<%=basePath%>erp/report/invokeLogin.action';
这样多加个parent,居然好了