問題一:
Response.Write 後串連Response.Redirect ,則Response.Write無法顯示,直接跳轉入Response.Redirect 的頁面。
解決方式:
Response.Write("<script languge='javascript'>alert('成功修改'); window.location.href='index.aspx'</script>");
如果,script內容中含有變數,那麼解決方案是:
string a=當前的記錄變數;
500){this.resized=true;this.style.width=500;}" align=top>Response.Write("<script language='javascript'>alert('"+a+"成功修改'); window.location.href="/index.aspx'<";/script>");
問題二:
如果要在串連中傳遞參數,則可用以下方法:
string param = "傳遞的參數";
Response.Write("<script languge='javascript'>alert('成功修改'); window.location.href='index.aspx?par =" + param + "'</script>");
問題三:
如果在Ajax的UpdatePanel中的按鈕中用Response.Redirect()或Response.Write()進行URL帶參數的頁面重新導向時出現錯誤。
由於Ajax是無重新整理的,而使用Response進行帶參重新導向時需要重新整理頁面。在UpdatePanel下設定“asp: PostBackTrigger”的“ControlID”為指定的控制項名稱即可,如:
<Triggers>
<asp:PostBackTrigger ControlID="GridView" />
</Triggers>
可以用註冊用戶端事件的方法解決UpdatePanel中的重新導向問題
例如:
string scriptStr = "window.open('mypage.aspx?CID=" + this.customerInfo.Text + "' ,'newwindow','height=520, width=840, top= 100, left = 100,menubar=yes ')";
ScriptManager.RegisterStartupScript(this.UpdatePanel1, this.GetType(), "click", scriptStr, true);