C# Asp.Net中新窗口中的Response.Redirect()
我想用c#在服务器端处理一些数据,新页面应该在新窗口中打开。C# Asp.Net中新窗口中的Response.Redirect(),c#,javascript,asp.net,.net,C#,Javascript,Asp.net,.net,我想用c#在服务器端处理一些数据,新页面应该在新窗口中打开。 提前感谢现在,在几乎所有浏览器中打开新窗口都必须从用户单击事件中调用。几乎所有浏览器(这涵盖了99%的情况)都会阻止从页面加载事件中调用的弹出窗口,因此我建议您重新考虑您的解决方案,可能是通过显示一个将在新窗口中打开的链接 我要做的是在click事件上打开新窗口,这将打开您的处理页面,这反过来将重定向到您想要的任何页面。基本上,首先使用click事件打开弹出窗口,然后在新页面中执行重定向。您不能使用响应。编写。一旦请求被发送到服务器,
提前感谢现在,在几乎所有浏览器中打开新窗口都必须从用户单击事件中调用。几乎所有浏览器(这涵盖了99%的情况)都会阻止从页面加载事件中调用的弹出窗口,因此我建议您重新考虑您的解决方案,可能是通过显示一个将在新窗口中打开的链接
我要做的是在click事件上打开新窗口,这将打开您的处理页面,这反过来将重定向到您想要的任何页面。基本上,首先使用click事件打开弹出窗口,然后在新页面中执行重定向。您不能使用
响应。编写。一旦请求被发送到服务器,就已经决定在哪里打开请求的页面。因此,当服务器代码运行时,更改页面的打开位置已经太晚了
如果要在新窗口中打开页面,则必须在将请求发送到服务器之前完成此操作。您应该发送一个以\u blank
为目标的请求,而不是回发。您可以使用以下链接:
<a href="Page.aspx" target="_blank">...</a>
对带有target=“\u blank”的A标记甚至可以工作,使用非常简单。或者更好的是,使用AJAX进行部分页面更新+1我尝试过这个,但我必须在服务器端运行c代码,然后打开新的window@FaheemShehzad:嗯,这真的毫无意义,但是您可以使用ScriptManager.RegisterStartupScript
添加一个不显示窗口的脚本。回发后打开。
window.open('Page.aspx', '_blank');