我試圖通過單擊按鈕來更改當前aspx頁面的URL更改爲其他URL。使用Request.Url.AbsoluteUri我可以得到的網址,但有可能修改?如果是的話,我會採取什麼行動,這將是一個新的要求或回發。從後面的代碼更改asp.net頁面的網址
請讓我知道您的意見。
感謝, MEHUL makwana
我試圖通過單擊按鈕來更改當前aspx頁面的URL更改爲其他URL。使用Request.Url.AbsoluteUri我可以得到的網址,但有可能修改?如果是的話,我會採取什麼行動,這將是一個新的要求或回發。從後面的代碼更改asp.net頁面的網址
請讓我知道您的意見。
感謝, MEHUL makwana
不,這不可能從後面的代碼修改當前頁面的URL。
代碼運行時,新的請求或回發已在進行中,所以一旦新響應完成,當前頁面將不再存在。
當瀏覽器中加載當前正在創建的頁面時,將使用它的URL代替當前頁面的URL。此URL已在請求前決定,因此您無法更改。
您可以做的是使用Response.Redirect
方法,通過所需的URL返回一個重定向頁面到瀏覽器。然後,瀏覽器會向服務器發出另一個請求,以獲取包含該URL的頁面。
如果您想更改頁面的URL而不使用重定向,則在代碼後面執行該操作爲時已晚。您必須更改按鈕使用客戶端腳本所做的操作,以便直接請求新的URL而不進行回發。
您可以使用Response.Redirect()
或Server.Transfer()
,雖然我會使用前者,而不是後者。
它將是new request
。
你可以嘗試用Response.Redirect
或Server.Transfer
這將導致回發。是否有可能沒有回發? – KhanS 2010-09-23 12:16:31
謝謝,我現在很清楚。 – mehul9595 2010-09-23 12:22:15
沒有。如果你想移動到其他網址,你需要做回發。那麼只有所有的控件都會啓動 – anishMarokey 2010-09-23 12:45:18
考慮使用jQuery或類似的庫 - 它將允許您修改頁面的DOM。如果您只能在服務器上生成新的URL,請考慮向服務器發送ajax請求。 Web方法將返回一些自定義對象,其中將包含一個新的URL。您將使用Web方法返回的數據,並使用jQuery或任何類似的庫來替換它。
嘿,你可以給任何參考鏈接或代碼片段,我沒有得到你的意思說。 – mehul9595 2010-09-23 13:08:07
想法是,你點擊一個鏈接。 Web瀏覽器通過jQuery對Web方法(Web服務)進行AJAX調用。Web服務查看您的請求,決定要執行的操作,構建一個新的URL並將其發送回最初發送請求的函數。在函數中讀取返回的數據(URL)並替換現有的URL。 – 2010-09-23 19:13:09
取決於你想要達到的目標;你是否試圖將瀏覽器重定向到新頁面,或將處理轉移到其他頁面? – 2010-09-23 12:09:40