web-dev-qa-db-ja.com

ボタンクリックで別のaspx Webページを起動する方法は?

ユーザーがボタンをクリックして別のページを(同じアプリケーション内で)起動するasp.netアプリケーションがあります。私が直面している問題は、元のページと新しく起動したページの両方を起動する必要があるということです。

Response.redirectを試しましたが、元のページがアンロードされる傾向があります。

助言がありますか?

12
Csharp

このボタンは、現在のページに投稿すると同時に、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');" />
29
Claudio Redi

編集および修正(シュレッダーのおかげ)

新しいタブを開きたい場合は、以下を試してください。

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

13
KreepN

コードビハインドを使用したい場合、asp:buttonに次の解決策を提案できますか-

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();
    }
6
riaandl

以下を使用する必要があります。

protected void btn1_Click(object sender, EventArgs e)
{
    Response.Redirect("otherpage.aspx");
}
2
Naqeeb Ahmed

HTMLボタンとJavaScriptを使用しますか? JavaScriptでは、window.locationは現在のウィンドウのURLの場所を変更するために使用され、window.openは新しいものを開きます

<input type="button" onclick="window.open('newPage.aspx', 'newPage');" />

編集:ああ、これが見つかりました:フォームタグのIDがform1、aspボタンでこの属性を設定します

OnClientClick="form1.target ='_blank';"
1
Nick Rolando