【问题标题】:How to open a page in a new window or tab from code-behind如何从代码隐藏在新窗口或选项卡中打开页面
【发布时间】:2016-06-28 04:18:10
【问题描述】:

所以我有一个网络应用程序,我从下拉列表中选择一个值。选择此值后,我想在新窗口中加载另一个页面。

我试过了:

ScriptManager.RegisterStartupScript(Page, typeof(Page), "OpenWindow", "window.open('Default.aspx', '_blank');", true);

它确实打开了页面,但不在新窗口/标签中。它在当前打开的页面中打开它。

我也试过了:

ClientScript.RegisterStartupScript(this.GetType(), "OpenWin", "<script>openDashboardPage()</script>");

HttpContext.Current.Response.Write("<SCRIPT LANGUAGE='JavaScript'>window.open('Default.aspx', '_new');</SCRIPT>");

它们的行为方式都相同。我只是在现有窗口中加载页面。我在 Firefox 和 Chrome 中都尝试过,认为这可能是浏览器的问题,但它们的行为相同。

如何打开新窗口?

【问题讨论】:

  • set target="_blank" 我猜..这可以帮助你
  • 有时您还需要像这样将调用包装到 jquery 函数中:$(openDashboardPage)
  • 我不完全确定必须在哪里添加 target="_blank" 部分,因为那将是 HTML。但我会调查一下,谢谢!

标签: c# asp.net


【解决方案1】:

试试这个

string redirect = "<script>window.open('http://www.google.com');</script>"; 
Response.Write(redirect);

【讨论】:

  • 这个方法你试过了吗。我已经对其进行了测试并在所有主要浏览器中都可以使用
【解决方案2】:

此代码适用于我:

Dim script As String = "<script type=""text/javascript"">window.open('" & URL.ToString & "');</script>"
ClientScript.RegisterStartupScript(Me.GetType, "openWindow", script)

【讨论】:

    【解决方案3】:

    用途:

    Target="_blank" 锚标签属性

    【讨论】:

    • 这对我有用(在新标签中打开)。我的情况是我有一个超链接控件(HyperlinkSharepoint),所以我添加了 HyperlinkSharepoint.Target = "_blank" 谢谢。
    【解决方案4】:
    Target= "_blank"
    

    这是在 html 中完成的,在 C# 中尝试一下

    【讨论】:

      【解决方案5】:

      您可以使用scriptmanager.registerstartupscript 调用JavaScript function

      在该函数中,您可以打开一个新窗口。

      【讨论】:

        猜你喜欢
        • 2010-10-28
        • 1970-01-01
        • 2012-04-30
        • 2013-02-13
        • 2014-10-11
        • 2013-01-18
        • 1970-01-01
        • 2015-03-10
        • 1970-01-01
        相关资源
        最近更新 更多