我有一個asp.net應用程序,用戶可以點擊一個按鈕並啓動另一個頁面(在同一個應用程序中)。我面臨的問題是,應該啓動原始頁面和新啓動的頁面。如何在點擊按鈕後啓動另一個aspx網頁?
我試過response.redirect,但是這往往會卸載原始頁面。
有什麼建議嗎?
我有一個asp.net應用程序,用戶可以點擊一個按鈕並啓動另一個頁面(在同一個應用程序中)。我面臨的問題是,應該啓動原始頁面和新啓動的頁面。如何在點擊按鈕後啓動另一個aspx網頁?
我試過response.redirect,但是這往往會卸載原始頁面。
有什麼建議嗎?
此按鈕後到當前頁面,而在同一時間在新的瀏覽器窗口中打開OtherPage.aspx
。我覺得這是你的意思...the original page and the newly launched page should both be launched.
<asp:Button ID="myBtn" runat="server" Text="Click me"
onclick="myBtn_Click" OnClientClick="window.open('OtherPage.aspx', 'OtherPage');" />
您如何關閉當前表單? – 2016-03-02 12:51:12
@DB:不明白..導航到新視圖是不夠的。爲什麼你需要打開一個新表格然後關閉當前? –
OnClientClick =「window.open('http://www.stackoverflow.com/');」這將打開新標籤。 – JoshYates1980
使用html按鈕和javascript?在JavaScript中,window.location
是用來改變當前窗口的URL位置,而window.open
將打開一個新
<input type="button" onclick="window.open('newPage.aspx', 'newPage');" />
編輯:啊,剛剛發現這一點:如果你的表單標籤的ID是form1
,在你的ASP按鈕
OnClientClick="form1.target ='_blank';"
我的第二個(已編輯的)解決方案可能會導致您的回髮結果顯示在新瀏覽器中,而舊窗口不會更改。如果您想要發佈到當前窗口並打開一個新窗口,請使用Claudio的答案 –
感謝您提供我的解決方案。看起來好像當我在我的一個網站上使用它時曾用過,但從那時起停止了這種功能。我將不得不因爲你而改變我的代碼:)。 – KreepN
@KreepN我只是混淆了你的代碼,它似乎工作,如果'Form.Target =「_blank」;'從他們以前的請求讀取。它建立了他們的下一個要求,在新窗口中進行迴應。例如:將其設置在Page_Load中,所有回傳頁面將在新窗口中打開^^ –
編輯設置該屬性和固定(感謝碎紙機)
如果你的意思是你想打開一個新的標籤,請嘗試以下:
protected void Page_Load(object sender, EventArgs e)
{
this.Form.Target = "_blank";
}
protected void Button1_Click(object sender, EventArgs e)
{
Response.Redirect("Otherpage.aspx");
}
這將保持原來的頁面保持開放,並導致當前頁面上的重定向隻影響新標籤。
-J
這對我無效 –
作爲編輯工作。如果人們正在尋找上述解決方案的替代方案,我就不會放棄。 – KreepN
如果你想背後使用代碼,我建議對ASP以下解決方案:按鈕 -
ASPX頁面
<asp:Button ID="btnRecover" runat="server" Text="Recover" OnClick="btnRecover_Click" />
代碼隱藏
protected void btnRecover_Click(object sender, EventArgs e)
{
var recoveryId = Guid.Parse(lbRecovery.SelectedValue);
var url = string.Format("{0}?RecoveryId={1}", @"../Recovery.aspx", vehicleId);
// Response.Redirect(url); // Old way
Response.Write("<script> window.open('" + url + "','_blank'); </script>");
Response.End();
}
你應該使用:
protected void btn1_Click(object sender, EventArgs e)
{
Response.Redirect("otherpage.aspx");
}
你是說這個頁面應該在新窗口中打開? –