2016-09-19 87 views
1

當用戶點擊按鈕時,我想在不同的選項卡中打開一個.aspx/.html頁面,並在同一個選項卡中打開一個.aspx/.html頁面。是否可以添加2 Response.Redirect,一個將打開在不同的選項卡,另一個將打開在同一個選項卡中,使用C#?

示例代碼:

string redirect = "<script>window.open('../User/Profile.html');</script>"; 
Response.Write(redirect); 
Response.Redirect("../User/NewUser.aspx",true); 

感謝Adance!

+0

潛在的重複數據刪除:http://stackoverflow.com/questions/16896284/opening-a-url-in-a-new-tab –

+0

在這種解決方案,他們正在使用window.location.href那麼它在所有瀏覽器工作的OnClientClick和OnClick方法。我不能這樣做,因爲我必須先執行.net代碼,然後只重定向到兩個頁面。 – HP1104

回答

1

沒有,響應重定向在HTTP的標題寫道:「位置」值,只能有一個,但你可以寫一個javascript喜歡下爲你所需要的:

window.open('../User/Profile.html', 'tabName'); 
window.location.href = '../User/NewUser.aspx'; 

祝你好運!

+0

感謝您的解決方案。它工作完美。 – HP1104

0

我們可以通過使用JavaScript和代碼頁背後

調用JavaScript Window.Open()函數Clientclick屬性在新窗口中打開。

和onClick調用您的代碼behine buttonClick事件在同一窗口重定向。

ASPX頁面:

<asp:Button ID="Button1" runat="server" Text="Button" OnClick="Button1_Click" OnClientClick="javascript:window.open('http://google.com','_blank');return true;" /> 

代碼背後點擊功能:

protected void Button1_Click(object sender, EventArgs e) 
{ 
    Response.Redirect("http://google.com"); 
} 
+0

你好,謝謝你的回答。我不能這樣做,因爲我必須在重定向到兩個頁面之前執行代碼。 – HP1104

0

這個代碼不工作在Chrome:

window.location.href = '../User/NewUser.aspx'; 

但是你可以使用這個代碼

setTimeout(function(){document.location.href = "page.html"},500); 
相關問題