为了账号安全,请及时绑定邮箱和手机立即绑定

Response.Redirect to new window

Response.Redirect to new window

江户川乱折腾 2019-08-16 15:22:46
Response.Redirect to new window我想做一个Response.Redirect("MyPage.aspx")但是在新的浏览器窗口中打开它。我之前没有使用JavaScript寄存器脚本方法就完成了这个。我只是不记得怎么了?
查看完整描述

3 回答

?
炎炎设计

TA贡献1808条经验 获得超4个赞

我刚刚找到答案,它的工作原理:)

您需要将以下内容添加到服务器端链接/按钮:

OnClientClick="aspnetForm.target ='_blank';"

我的整个按钮代码如下所示:

<asp:LinkButton ID="myButton" runat="server" Text="Click Me!" 
                OnClick="myButton_Click" 
                OnClientClick="aspnetForm.target ='_blank';"/>

在服务器端OnClick我做了一个Response.Redirect("MyPage.aspx");页面在新窗口中打开。

您需要添加的另一部分是修复表单的目标,否则每个链接都将在新窗口中打开。为此,请在POPUP窗口的标题中添加以下内容。

<script type="text/javascript">
    function fixform() {
        if (opener.document.getElementById("aspnetForm").target != "_blank") return;
        opener.document.getElementById("aspnetForm").target = "";
        opener.document.getElementById("aspnetForm").action = opener.location.href;
    }</script>

<body onload="fixform()">


查看完整回答
反对 回复 2019-08-16
?
慕村225694

TA贡献1880条经验 获得超4个赞

因为Response.Redirect是在服务器上启动的,所以无法使用它。

如果您可以直接写入Response流,您可以尝试以下方法:

response.write("<script>");response.write("window.open('page.html','_blank')");response.write("</script>");


查看完整回答
反对 回复 2019-08-16
  • 3 回答
  • 0 关注
  • 498 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信