2013-04-22 7 views
9

So habe ich eine Webanwendung, wo ich einen Wert aus einer Dropdown-Liste auswählen. Wenn dieser Wert ausgewählt ist, möchte ich eine andere Seite in einem neuen Fenster laden.So öffnen Sie eine Seite in einem neuen Fenster oder Tab von Code-Behind

Ich versuchte dies:

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

Es die Seite öffnet, aber nicht in einem neuen Fenster/Tab. Es öffnet es in der aktuell geöffneten Seite. Alternativ

Ich habe versucht:

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

und

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

Sie alle in der gleichen Art und Weise verhalten. Ich lade nur die Seite in das bestehende Fenster. Ich habe es sowohl in Firefox als auch in Chrome ausprobiert, weil ich dachte, es könnte eine Browser-Sache sein, aber sie verhielten sich beide gleich.

Wie öffne ich ein neues Fenster?

+1

set target = "_ blank "Ich denke..das kann Ihnen helfen – Darshan

+0

Manchmal müssen Sie auch Anruf in jquery-Funktion wie folgt umhüllen: $ (openDashboardPage) – Andrei

+0

Ich bin mir nicht ganz sicher, wo ich den target = "_ blank" -Teil hinzufügen müsste, da dies HTML wäre. Aber ich werde mich darum kümmern, danke! – Kheran

Antwort

17

Versuchen Sie dieses

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

Haben Sie diese Methode versucht? Ich habe es getestet und in allen gängigen Browsern gearbeitet –

0
Target= "_blank" 

Dies macht es in html, geben einen versuchen es in C#

-1

Sie können scriptmanager.registerstartupscript verwenden, um eine JavaScript function zu nennen.

Innerhalb dieser Funktion können Sie ein neues Fenster öffnen.

2

Dieser Code funktioniert für mich:

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

Verwendung:

target = "_blank" Eigenschaft Ankertag

+0

dies funktionierte für mich (in einem neuen Tab geöffnet). Meine Situation war ich hatte eine Hyperlink-Kontrolle (HyperlinkSharepoint), also habe ich HyperlinkSharepoint.Target = "_blank" Dank hinzugefügt. –

Verwandte Themen