iframe请求失效重新登录后直接跳转到请求内容页面的解决方案

iframe请求失效重新登录后直接跳转到请求内容页面的解决方案

上一篇文章讲到easyUI iframe中请求Session失效后iframe内跳转到首页,首页只在iframe中显示,没有填充整个页面,通过判断window.top是否为空或者URL是否一致来解决:easyUI iframe中请求Session失效后iframe内跳转到首页的解决方案

不过还有一个问题,就是登录成功以后,发现浏览器直接跳转到iframe内容的页面了,如果iframe外有父页面,父页面是不显示的。

原因:目前浏览器,后台应用都支持请求保存,如果请求失败后,会保存请求,等登录后再继续执行请求。

解决方案:

1. 如果登录失败,将请求地址指向登录页面前,先跳转到会话超时提示页面,然后在提示页提示重新登录,重新登录按钮指向登出,登出完成后自动会跳转到登录页面。

<pre name="code" class="html">  //判断当前窗口是否有顶级窗口,如果有就让当前的窗口的地址栏发生变化, //这样就可以让登陆窗口显示在整个窗口了
    function loadTopWindow(){ 
    	if (window.top!=null && window.top.document.URL!=document.URL){
    		var urlStr = document.URL;
    		 var endIndex = urlStr.indexOf('xxxxx') + 5;
    		urlStr = urlStr.substring(0, endIndex);
    		window.top.location= urlStr + "/timeout.jsp";  // 跳转到提示页
    		//alert(document.URL);
    		//alert(urlStr);
    		
    		//window.top.location= document.URL; // 不跳转到首页
    	} 
    }
</script>
</head>
<body οnlοad="loadTopWindow()">

 




评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值