使用 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()
函数在页面加载时运行,从而更正表单的目标属性。通过实现这三个步骤,Response.Redirect("MyPage.aspx")
事件中对 OnClick
的服务器端调用将在新的浏览器窗口中成功打开“MyPage.aspx”,保持原始页面完好无损。
以上是如何使用 Response.Redirect 重定向到新的浏览器窗口?的详细内容。更多信息请关注PHP中文网其他相关文章!