[英]ASP.NET: How to handle all page redirection?
在ASP.NET頁中,有實際方法可以處理以下所有這些問題:
只需一個Web控件(或方法)?
TQ
回發可以在服務器端處理
另外兩個-鏈接點擊或網址字段應僅使用Javascript處理。
更新:您可以使用jQuery顯示問題中提到的“加載動畫”
$(window).unload( function () { alert("Bye now!"); } );
一旦用戶嘗試離開頁面,這將發出警報。 您可以對其進行更改,以便顯示動畫gif圖像。
但是,必須對此進行測試。 我認為這毫無意義; 在瀏覽器開始加載新頁面之前,不太確定gif的顯示時間。
編輯:
正如我在評論中提到的,根據我的上次修改,您可以使用javascript進行回發
$(window).unload( function () { __doPostBack("leaving"); } );
會向服務器發出回發,您可以通過以下方式捕獲它:
protected override void OnInit(EventArgs e)
{
base.OnInit(e);
this.PreLoad += (sender, args) =>
{
this.ClientScript.GetPostBackEventReference(this, "arg");
if (!IsPostBack) { return; }
string __targetaction = this.Request["__EVENTTARGET"];
string __args = this.Request["__EVENTARGUMENT"];
if (string.IsNullOrEmpty(__args)) return;
if (__targetaction == "leaving")
{
doSomething();
}
};
}
再說一次,我不太確定這會不會有太大幫助,因為用戶正在離開該頁面。
回傳
在此Page.IsPostBack將為= true
用戶單擊頁面中的鏈接時的重定向
在這種情況下,您將在引薦來源網址中獲得價值。 您可以使用Request.ServerVariables [“ http_referer”]或Request.UrlReferrer
用戶在瀏覽器中更改URL字段時的重定向
否則這是第三種情況
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.