Response.Redirect を使用して新しいブラウザ ウィンドウを開く
Web 開発者は多くの場合、現在の閲覧セッションを中断せずにユーザーを新しいページにリダイレクトする必要があります。 Response.Redirect
は一般的に使用されますが、別のウィンドウで新しいページを開くのは難しい場合があります。 このガイドでは、ソリューションの概要を説明します。
鍵となるのは、クライアント側とサーバー側のテクニックの組み合わせです。
クライアント側ターゲットの変更: 属性 OnClientClick="aspnetForm.target='_blank';"
をサーバー側のリンクまたはボタンに追加します。これにより、ブラウザは強制的にリンクを新しいタブまたはウィンドウで開きます。
グローバルな新しいウィンドウの動作の防止: 新しいウィンドウで すべて のリンクが開かれないようにするには、次の JavaScript 関数をポップアップ ウィンドウのヘッダーに追加します:
<code class="language-javascript">function fixform() { if (opener.document.getElementById("aspnetForm").target != "_blank") return; opener.document.getElementById("aspnetForm").target = ""; opener.document.getElementById("aspnetForm").action = opener.location.href; }</code>
onload="fixform()"
タグに <body>
を含めます。これにより、ページの読み込み時に fixform()
関数が確実に実行され、フォームのターゲット属性が修正されます。これら 3 つの手順を実装すると、Response.Redirect("MyPage.aspx")
イベント内での OnClick
へのサーバー側の呼び出しは、元のページをそのまま残したまま、新しいブラウザー ウィンドウで「MyPage.aspx」を正常に開きます。
以上がResponse.Redirect を使用して新しいブラウザ ウィンドウにリダイレクトする方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。