2013-04-22 57 views
9

所以我有一个web应用程序,我从下拉列表中选择一个值。当选择此值时,我想在新窗口中加载另一个页面。如何在新窗口或代码隐藏页中打开页面

我尝试这样做:

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都试过,认为它可能是浏览器,但它们的表现都一样。

如何打开新窗口?

+1

设定的目标=“_空白“我猜...这可以帮助你 – Darshan 2013-04-22 10:46:32

+0

有时候你还需要将调用打包成jquery函数,如下所示:$(openDashboardPage) – Andrei 2013-04-22 10:48:45

+0

我不完全确定在哪里添加target =“_ blank”部分,因为那将是HTML。但我会研究它,谢谢! – Kheran 2013-04-22 12:48:03

回答

17

试试这个

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

你试过这种方法吗?我已经测试过它并在所有主流浏览器中工作 – 2013-05-06 11:56:17

0
Target= "_blank" 

这确实在HTML中,给它一个尝试在C#

-1

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

在该功能中,您可以打开一个新窗口。

2

此代码的工作对我来说:

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

用途:

目标= “_blank” 锚标记的财产

+0

这为我工作(在新标签中打开)。我的情况是我有一个超链接控件(HyperlinkSharepoint),所以我添加了HyperlinkSharepoint.Target =“_blank” 谢谢。 – 2015-07-10 11:53:03

相关问题