2012-02-09 230 views
0

我想在彈出窗口中添加後退按鈕。但我有問題,因爲我得到了403錯誤。我也嘗試了Request.UrlReferrer.ToString()。只需右鍵單擊並選擇返回工作,客戶端不需要彈出stnard IE後退按鈕的工具欄。有什麼建議麼?自定義後退按鈕

Protected prevPage As String = String.Empty 
Private Sub Page_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load 
    If Not IsPostBack Then 
     prevPage = Request.ServerVariables("HTTP_Referer") 
    End If 
End Sub 

Protected Sub Back_Click(ByVal sender As Object, ByVal e As EventArgs) 
    Response.Redirect(prevPage) 
End Sub 

回答

1

使用javascript而不是回發。

<asp:HyperLink ID="lnk" runat="server" NavigateUrl="#" onClientClick="history.go(-1);" Text="Go Back" /> 

這將可能在代碼被修改的背後,但是這可能僅僅簡單地是一個標準的<a>元件一個asp.net控制。

編輯:
如果您有多個回發發生在頁面上,歷史可能不會對他們正常工作。您可能必須放入跟蹤器,並根據發生的回發數來更改整數。此外,如果您有多個回覆到單個頁面,則離開該頁面,「回」可能會導致返回頁面發佈不正確的帖子。

+0

是的我只是發現我做了onclientclick =「javascript:history.back(); return false;」和一切工作 – cjohnson2136 2012-02-09 17:39:52

+0

@ cjohnson2136:不知道你是否看到我的編輯,但要注意這種方法的陷阱和陷阱。 – 2012-02-09 17:41:52

+0

以及它來自的頁面只有一個選項。您只能從發送回該頁面的那個頁面訪問此頁面 – cjohnson2136 2012-02-09 17:44:28

相關問題