新しいブラウザ ウィンドウで Response.Redirect リンクを開く (サーバー側のソリューション)
問題: JavaScript に依存せずに、Response.Redirect("MyPage.aspx")
によって生成されたリンクを新しいブラウザーのタブまたはウィンドウで開くにはどうすればよいですか?
解決策: Response.Redirect
自体はブラウザーがリダイレクトを処理する方法を直接制御しませんが、リダイレクトを開始する HTML リンクまたはボタンを操作するサーバー側の手法を使用してこれを実現できます。 この方法では、クライアント側の JavaScript が不要になります。
このアプローチには、リダイレクトをトリガーする HTML 要素の target
属性 (<a>
タグや <asp:LinkButton>
など) の設定が含まれます。 この属性は、リダイレクトされたページが開く場所を指定します。 target="_blank"
を設定すると、リンクが新しいウィンドウまたはタブで開きます。
ASP.NET を使用した例:
<code class="language-aspx"><asp:LinkButton ID="myButton" runat="server" Text="Click Me!" OnClick="myButton_Click" Target="_blank" /></code>
コードビハインド (C#):
<code class="language-csharp">protected void myButton_Click(object sender, EventArgs e) { Response.Redirect("MyPage.aspx"); }</code>
この設定により、ボタンをクリックすると Response.Redirect
がリダイレクトを開始し、ボタンの HTML 内の Target="_blank"
属性によりリダイレクトされたページ (MyPage.aspx
) が新しいタブまたはウィンドウで強制的に開かれるようになります。
重要な注意: このメソッドは、ブラウザが target
属性を正しく解釈することに依存します。 これは純粋にサーバー側のソリューションであり、JavaScript は一切含まれません。 この動作はブラウザが異なっても一貫しています。 このアプローチでは、追加の JavaScript 関数は必要ありません。
以上がJavaScript を使用せずに新しいブラウザ ウィンドウで Response.Redirect リンクを開くことはできますか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。