2012-06-18 58 views
1
Response.Write("<script>alert('Konaklama Başarıyla Eklendi')</script>"); 
    string url = "NewAccommodation.aspx?mID=" + mID; 
    Response.Redirect(url); 

嗨,在上面的代碼,它不會顯示警告框,因爲它後面的代碼行。如何解決這個問題?asp.net Response.Write

+1

你將不得不把消息框NewAccommodation.aspx頁面上.. 。一旦你重定向,在原始頁面上沒有其他事情會發生 – freefaller

回答

2

工作對你極其有限的代碼,你有兩個選擇,因爲我看到它... ...

重定向到NewAccommodation.aspx,然後從那裏

寫了「警報」腳本或發送以下....

Response.Write("<script type='text/javascript'>") 
Response.Write("alert('Konaklama Başarıyla Eklendi');") 
Response.Write("document.location.href='NewAccommodation.aspx?mID=" + mID.ToString() + "';") 
Response.Write("</script>") 
+0

非常感謝! – user1285383

+0

不客氣,很高興我能提供幫助。瞭解服務器和客戶端之間的通信的生命週期(以及各方將發生的事情)是有效ASP.NET編程的關鍵 – freefaller

2

你爲什麼不試試這個

string url = "NewAccommodation.aspx?mID=" + mID; 
    Response.Redirect(url); 

而且把這個NewAccommodation.aspx page_load

if(!IsPostBack) 
    Response.Write("<script>alert('Konaklama Başarıyla Eklendi')</script>"); 
+1

除了如果他這樣做,他會在每次頁面加載時都會看到警報,即使用戶沒有使用這個特定的重定向。 – Stilgar

+0

這就是true我接受 – yogi

+0

'string url =「NewAccommodation.aspx?mID =」+ mID +「&showmessage = 1' –

0

你有兩個選擇

  1. 重定向到一個知道如何的URL顯示警報。您可以在查詢字符串中包含一個參數,但不要在查詢字符串中包含腳本本身,因爲這存在安全風險。
  2. 通過設置window.location.href屬性在警報之後通過腳本執行客戶端重定向。
1

Response.Redirect向瀏覽器發送標題,導致它導航到另一個URL。作爲它的頭部,它在響應的第一部分,所以它後面的東西不是頭部(就像你的輸出一樣)永遠不會被瀏覽器處理。

Insted you can;

Response.Write("<script>alert('Konaklama Başarıyla Eklendi'); location.href='" + url + "'</script>"); 
0

您可以嘗試

Response.Write(「alert('KonaklamaBaşarıylaEklendi'); window.location.href ='NewAccommodation.aspx MID =」 + MID + 「?」);

編碼愉快!