2012-04-10 22 views
0

Versuchen, eine neue Seite in einem neuen Fenster anzuzeigen, wenn der Benutzer auf eine Schaltfläche klickt. Der Versuch, es so weit mit diesem aber kein Glück zu testen:asp.net neue Seite auf Schaltfläche klicken

Label1.Text = "<form><input type=button name=print value='Print View' onClick='javascript:window.open('http://mylink','mywindow')'></form>"; 

Ich denke, es könnte eine Formatierung Problem sein, aber nur kann es nicht sehen. Für dieses Beispiel funktioniert gut:

<input type=button name=close value='Close' onClick='javascript:parent.jQuery.fancybox.close()'> 
+0

Technisierung, aber Sie sollten eine wörtliche anstelle eines Etiketts mit sein – Pleun

Antwort

2

Sie wahrscheinlich verwenden sollten:

Label1.Text = @"<form><input type=""button"" name=""print"" value=""Print View"" onClick=""javascript:window.open('http://mylink','mywindow')""></form>"; 

Wenn Sie eine Variable aufnehmen möchten, können Sie verwenden:

string url = "http://www.google.com"; 
    Label1.Text = String.Format(@"<form><input type=""button"" name=""print"" value=""Print View"" onClick=""javascript:window.open('{0}','mywindow')""></form>", url); 

jedoch, Stellen Sie sicher, dass der Inhalt von url sicher ist, wenn er von einem vom Benutzer bereitgestellten Eingang stammt! Andernfalls öffnen Sie sich möglicherweise für Skriptinjektionsangriffe.

+0

Sie glauben nicht, das Problem ist, dass die OP den Wert eines ** Label setzt ** zu Rohes HTML? Steuert das Label nicht Zeichen? –

+0

@KirkWoll - Ich glaube nicht, dass das Steuerelement "Label" standardmäßig ausgeblendet wird. Die Dokumente haben eine Sicherheitswarnung und ihr Beispiel Code verwendet HtmlEncode - http://msdn.microsoft.com/en-us/library/system.web.ui.webcontrols.label.aspx –

+0

raten Sie, dass Sie Recht haben. Überprüfen des Codes, der nicht angezeigt wird. –

3

Bitte versuchen:

Label1.Text = "<form><input type=button name=print value='Print View' onClick='javascript:window.open(\"http://mylink\",\"mywindow\")'></form>"; 
+0

das hat es getan. Vielen Dank :) –

Verwandte Themen