在開發過程中為了滿足客戶的要求要實現這樣一個功能:在A頁面內點擊一個文字連接后進入C頁面,在點擊返回按鈕后可以返回A頁面,而在B頁面也有該文字連接,點擊后進入C頁面,返回時則返回B頁面(C頁面內只能有一個返回按鈕).為此想到了使用Session功能,就是向C頁面跳轉時記錄下是從哪個頁面跳過來的,然后點擊返回按鈕時對session的內容進行判斷,從而決定是返回A頁面還是B頁面. 首先在A,B兩個頁面內要加入取得頁面路徑的代碼 string url=Request.CurrentExecutionFilePath.ToString(); //獲得當前頁面的虛擬路徑 Session[“URL”]=url; Response.Redirect("C.aspx",true); 在C頁面內首先通過session獲得上個頁面的虛擬路徑 string url=Session["URL"].ToString(); 由于A.B兩個頁面的虛擬路徑前半部分相同,實際上我們只要判斷是“A.aspx”還是“B.aspx”就行了.因此先借助split方法取得我們想要的頁面名稱,然后可以將名稱賦給一個label,在頁面內隱藏掉這個label(此處是否需要使用Lable來保存頁面名稱可以根據情況而定). string[] split=url.Split(new char[] {'/'}); int n=split.Length; string pathname=split[n-1]; Label1.Text=pathname; 最后在返回按鈕的響應事件中進行判斷,決定返回哪個頁面: if (Label1.Text=="A.aspx") Response.Redirect("A.aspx",true); else Response.Redirect("B.aspx",true); |
溫馨提示:喜歡本站的話,請收藏一下本站!