1. 程式人生 > >從iframe框架進入登入頁面時跳出iframe到頂層頁面

從iframe框架進入登入頁面時跳出iframe到頂層頁面

問題描述,開發的easyui專案中使用了iframe框架。當在瀏覽器開啟一個頁面登入專案後,再開啟一個登入到專案的首頁。當從其中一個的頁面退出後,如果在另一個頁面中點選選單或其他功能時,請求會被登入攔截器攔截到登入頁面。這時,登入頁面出現在iframe框架中,而不是整個頁面跳轉到登入頁面。

解決辦法,在登入頁面中,新增js判斷,如果不是頂層框架跳轉到登入頁面,則將頂層的頁面url設定為跳轉當前這個iframe框架的頁面,也許是一個轉發的action,也許是重定向到login.jsp頁面。為了邏輯的清晰,最好是在後端的logou方法中,重定向到login.jsp。

login.jsp頁面中的js判斷為:

$(function(){
	login.initPage();
});

var login = {
	//初始化頁面跳轉,為了防止從iframe跳轉到login頁面直接在iframe中顯示login頁面
	initPage : function() {
		//alert(location.href);
		if(window.top != window.self){
			top.location.href = location.href;
		}
	},
}