Da ich ein ganzes HTML-Dokument in einer Zeichenfolge enthalten habe, wie kann ich ein neues Browserfenster starten und dann das HTML in diese Instanz einfügen, damit das neue Fenster das Dokument darstellt?ASP.NET-Webforms: Wie kann ich ein ganzes HTML-Dokument in ein neues Browserfenster schreiben?
Ich habe so viele Beispiele im Internet gefunden, die einfach nicht funktionieren. Ich bin ein Mittelschicht-Typ, also bin ich schwach im Web/Javascript Zeug.
UPDATE: Hier ist ein Code-Snippet, das zeigt, was ich versuche
void Display()
{
string javascript = string.Empty;
javascript += "<script type='text/javascript'>";
javascript += "var win = window.open('', '', '');";
javascript += "win.document.open();";
javascript += "win.document.write('{0}');"; //<------Notice I have a format parameter placed within the call to document.Write
javascript += "win.document.close();";
javascript += "win.focus();";
javascript += "</script" + ">";
// this.DisplayableDocumentation is an IEnumerable of strings. Each string contains an entire
// HTML document. Ultimately, I want to launch a new window for each document.
this.DisplayableDocumentation
.ForEach(document =>
{
HttpContext.Current.Response.Write(string.Format(javascript, document));
});
}
Danke für die Antwort. Ich bin jedoch nicht erfolgreich, wenn Sie Ihr Beispiel verwenden. Das Ergebnis ist eine leere Seite. Wenn ich den Seitenquellcode anschaue, sehe ich den Aufruf von document.write zusammen mit dem gesamten HTML-Code, den ich an den Aufruf übergeben habe. Ich aktualisiere meinen ursprünglichen Post mit einem Codebeispiel. –
Gibt es eine Grenze für das, was in document.write() übergeben werden kann? Wenn ich einen kleinen Ausschnitt von HTML übergebe, funktioniert alles gut. Wenn ich ein ganzes HTML-Dokument über eine String-Variable übergebe, funktioniert es überhaupt nicht. –
Danke! Der obige Code hat mich vorangebracht, aber leider scheint Javascript nicht in der Lage zu sein, das HTML zu verarbeiten, das ich an document.write() übergebe. Ich erhalte einen Javascript-Fehler 'Nicht abgeschlossene String-Konstante'. ASP.net's Response.Write hat kein Problem beim Rendern des HTML, also sagt mir das, dass der HTML-Code gut genug ist und daher gerendert werden sollte. Aber andererseits, was weiß ich, ich bin kein Web-Typ. :) –