C# 通过C按钮单击打开一个新的浏览器窗口

C# 通过C按钮单击打开一个新的浏览器窗口,c#,web-applications,redirect,.net-4.0,C#,Web Applications,Redirect,.net 4.0,下面是一些关于我尝试做什么的背景信息: 我有一个客户查看页面;在该页面上,有一个按钮记录新的通话记录。单击此按钮将重定向到新呼叫页面。 在new call(新呼叫)页面上,用户可以选择几个复选框来触发其他操作,例如,他们的订单有问题,他们有产品推荐,等等 提交通话记录后,用户将通过Response.Redirect返回到customer view页面 现在,我想做的是,如果用户选择了一个额外的操作复选框,我仍然希望调用页面重定向回客户视图页面;但是,我还想在自己的窗口中打开相应的附加操作页面 因

下面是一些关于我尝试做什么的背景信息:

我有一个客户查看页面;在该页面上,有一个按钮记录新的通话记录。单击此按钮将重定向到新呼叫页面。 在new call(新呼叫)页面上,用户可以选择几个复选框来触发其他操作,例如,他们的订单有问题,他们有产品推荐,等等 提交通话记录后,用户将通过Response.Redirect返回到customer view页面 现在,我想做的是,如果用户选择了一个额外的操作复选框,我仍然希望调用页面重定向回客户视图页面;但是,我还想在自己的窗口中打开相应的附加操作页面

因此,生成的流将如下所示:

用户打开“客户”页面,然后单击“新建呼叫”。浏览器重定向到呼叫页面 用户选择订单问题并保存通话记录。“通话记录”页面重定向回“客户查看”页面 用于处理订单问题的质量报告页面将弹出一个新窗口。 Google告诉我使用ClientScript.RegisterStartupScript,但所有这些示例中都没有涉及重定向。有没有关于如何实现这一点的想法?

您可以使用OnClientClick和一些javascript来显示弹出窗口

<asp:Button ID="Button1" OnClick="Button1_Click" OnClientClick="showPopup()" />

并使用OnClick服务器端事件处理程序进行重定向。

您需要通过javascript确定是否需要弹出窗口,并在发布前弹出页面,或者需要在重定向后弹出页面


要在重定向后弹出窗口,请使用SessionState存储一些信息,例如CustomServicewPage可以检查是否需要弹出窗口。如果是这样,请让CustomerViewPage调用ClientScript.RegisterStartupScript来调用弹出窗口。

方法是在重定向到的页面中放置一些JS以启动弹出窗口,从而打开弹出窗口。但这是行不通的,因为具有默认设置的浏览器不允许页面在没有用户单击的情况下打开弹出窗口。你需要做的是从第一页启动弹出窗口,点击按钮,就像@BalaR的答案一样。或者根本不使用弹出窗口。