使用HTML Response / JS ASP打开一个新页面

时间:2013-01-14 22:21:07

标签: asp.net

好吧,我决定通过打开一个新页面(newPage.aspx)来解决这个问题,然后在下载完成后启动下载并关闭。我正在使用javascript打开newPage.aspx,将其写入当前页面的响应。但是,出于某种原因,在重新定向原始页面之前未打开窗口。在我重定向之前,他们的方法是否被调用?也许我有语法问题?

Response.Write("<script type='text/javascript'>window.open('~/newPage.aspx', '', ''); </script>")

Response.Redirect("~/oldPage.aspx")

修改

我尝试了以下但是没有用...(我在更新面板中工作)

ScriptManager.RegisterStartupScript(udpMain, udpMain.GetType(), "openExcel", "window.open('~/newPage.aspx', '' , '');", True)

编辑2:如此关闭

好的,所以这只有在我注释掉Response.Redirect时才有效。看起来RegisterStartupScript方法发生在Response.Redirect方法之后的页面加载上。对此有任何已知的解决方法吗?

ScriptManager.RegisterStartupScript(udpMain, udpMain.GetType(), "openExcel", "window.open(NewPage.aspx'); location.href='OldPage.aspx';", True)
Response.Redirect("~/OldPage.aspx")

1 个答案:

答案 0 :(得分:1)

您也可以通过客户端脚本重定向。顺便说一句,当使用ASP.NET时,将JS嵌入HTML的优选方式是ClientScript.RegisterStartupScript,例如

ClientScript.RegisterStartupScript(Me.GetType(), "JSCode" & Rnd(1).ToString, "window.open('newPage.aspx'); location.href = 'oldPage.aspx'", True)