2011-09-13 91 views
0

那麼,它的技術很難說明我的意思。在網站運行時,更改webfroms中某個網站的網址

但是,可以說你正在連接到一個名爲"www.active.com/active"的網站。

當你在頁面中時,或者在加載頁面時,你想要。該網址將會改變。

可以說,你只是寫了"www.active.com/active"你可以連接和網址將"www.active.com/active2"當頁面完成加載。

或者,當你在頁面,15秒後,將變更爲/active2.

什麼辦法?

編輯:

而不改變頁面。只有網址。

+0

在page_load for/active中,執行'Response.Redirect(「/ active2」)'。 –

+0

處理LoadComplete頁面事件和Response.Redirect? – kd7

+0

我的答案公開了重定向用戶的主要方法。儘管如此,你的編輯是不可能完成的(改變URL而不刷新/重定向頁面)。 –

回答

2

這是不可能的(和我很高興的吧!)

你說的是編輯用戶的瀏覽器地址欄中的URL文本框中。這是用戶軟件的一部分,而不是頁面中的內容。此外,如果這是可能的話,黑客可以說服你,你在一個像匯豐或Facebook這樣的網站上,當時你真的在一個存儲你的細節的惡意網站上。

有關如何重定向到另一個網頁,看到我下面迴應的答案:


你可以做15秒鐘後,一個HTML重定向:

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN"> 
<html> 
<head> 
    <title>Your Page Title</title> 
    <meta http-equiv="REFRESH" content="15;url=http://www.active.com/active2"> 
</head> 
<body> 
</body> 
</html> 

或者,如果你希望立即重定向,你可以處理這個服務器端:

protected void Page_Load(){ 
    Response.Redirect("/active2"); 
} 
+0

查看我的編輯:) –

+0

@Alon M - 查看我的編輯 – Curt

+0

完成,謝謝:)。 –

0

您可以使用重定向。

這可以使用客戶端重定向(如果您希望在頁面上存在一段時間後發生)或使用服務器端重定向(如果您希望在用戶第一次加載頁面時發生重定向) 。

客戶機端示例:

<meta http-equiv="refresh" content="5; url=http://example.com/"> 

說:5秒後負載http://example.com

參見:Wikipedia

服務器端示例:

Response.Redirect("/active2") 

表示:使用重定向用戶當前頁的HTTP標頭

參見:Developer.com

服務器端實施例2:

Server.Transfer("/active2") 

說:重定向請求到服務器上的這個新頁面(它傳輸用戶而不告訴瀏覽器)。

請參見:Developer.com

這應該給你足夠的覆蓋基礎。

0

對於第一個,它聽起來像一個URL重寫或前鋒。如果你正在做一個重寫,apache有許多不同的選項(我看你使用的是asp.net,所以你可能使用IIS,我不確定,但我想說它不支持它)。如果你正在做前鋒,那將會在head

第二個,可能是表單中的POST函數。

0

使用Response.Redirect()在www.active.com/active.aspx的代碼隱藏的Page_Load立即重新定向:

protected void Page_Load(object sender, EventArgs e) 
{ 
    Response.Redirect("~/active2"); 
} 

對於同一個aspx頁面定時重定向使用:

<script type="text/JavaScript"> 
    setTimeout("location.href = 'www.active.com/active2.aspx';",15000); 
</script> 
+0

這將重定向到'http:// www.active.com/www.active.com/active2' – Curt

+0

檢查我的編輯:) –

+0

@Curt:是的,我的壞,我糾正它:) –