2016-05-19 8 views
0

Ich habe kürzlich angefangen Java Script zu lernen. Ich möchte document.write() verwenden und HTML-Code als Zeichenfolge ausgeben, ohne den Code tatsächlich auszuführen (nur auf dem Bildschirm).Wie kann ich ausgeben, um HTML als String zu screenen?

Gibt es irgendeine Funktion, die mir dabei helfen könnte?

Hinweis: Ich versuche, es zu tun, Java Script (nicht jQuery)

+0

Bitte lesen Sie die Antwort von ErikE zu diesem Thema im folgenden Thread: http://StackOverflow.com/Questions/6221067/Display-HTML-markup-in-Browser-without-it-sing-rendared – bartselen

Antwort

2

nicht document.write() Verwenden Sie; Es ist die Methode des 20. Jahrhunderts, das DOM dynamisch zu erstellen. Platzieren Sie die Zeichenfolge stattdessen in dem textContent eines Elements, das Sie in dem ursprünglichen HTML erstellten.

var string = "<p>hi</p>"; 
 
document.getElementById("output").textContent = string;
<div id="output"></div>

Eine andere Möglichkeit wäre, einen Textknoten zu erstellen und an die DOM anhängen.

var string = "<p>Hi</p>"; 
 
var node = document.createTextNode(string); 
 
document.body.appendChild(node);

0

Um auf @Calvin Claus 's Antwort, sollten Sie auch tauschen' hinzufügen & 'für '&amp;' und wickeln Sie Ihre gesamte Zeichenfolge in <pre> und </pre> Tags Leerzeichen zu beseitigen. Beachten Sie jedoch, dass Sie im Allgemeinen nicht document.write() verwenden und stattdessen die textContent -Eigenschaft eines Elements im DOM ändern sollten (ein div wäre wahrscheinlich der Fall), und Sie müssen Ihr HTML-Markup nicht umgehen.

Verwandte Themen