好的,我决定通过打开一个新页面 (newPage.aspx) 来解决这个问题,然后该页面将启动下载并在下载完成后关闭。我通过将 newPage.aspx 写入当前页面的响应来使用 javascript 打开它。但是,由于某种原因,在重定向原始页面之前没有打开窗口。他们是在我重定向之前要调用的方法吗?也许我有语法问题?
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")