So fügen Sie HTML als Text ein

8

Ich möchte, dass HTML, zum Beispiel <p> , nur im Klartext angezeigt wird und nicht vom Browser als tatsächliches Tag interpretiert wird.

Ich weiß, dass JQuery .html und .text hat, aber wie geht das in rohen JS?

Es gibt Funktionen wie encodeURIComponent, das <p> in %3Cp%3E codiert, aber wenn ich das einfach in HTML lege, interpretiert es es buchstäblich als %3Cp%3E .

Also gibt es auch Dinge wie &gt; und &lt; , sie funktionieren, aber ich kann keine JavaScript-Funktionen finden, die & amp; Unescapes davon.

Gibt es eine korrekte Möglichkeit, HTML als Text mit reinem JavaScript anzuzeigen?

    
foobar 11.04.2011, 05:50
quelle

5 Antworten

16

Es gibt keine Notwendigkeit, den Charakteren zu entkommen. Verwenden Sie einfach createTextNode :

%Vor%

Siehe ein funktionierendes Beispiel hier: Ссылка .

Genau so macht es jQuery ( Zeile 43 von jQuery 1.5.2 ):

%Vor%     
David Tang 11.04.2011, 05:55
quelle
5

Die von Prototype verwendete Funktion sieht wie ein guter Anfang aus:

Ссылка

%Vor%

Version besser geeignet, um außerhalb von Prototyp zu verwenden:

%Vor%     
thirtydot 11.04.2011 05:55
quelle
1

Dies ist ein Job für die Methode createTextNode

%Vor%     
Andrew Shepherd 11.04.2011 05:58
quelle
1

Ich empfehle, Pre-Tag von HTML

zu verwenden

und Sie können Ihren Link

konvertieren

z. B. wenn Sie

kopieren %Vor%

es wird Ihnen konvertierten Code als ...

geben %Vor%

Kopieren Sie einfach obigen Code in pre und es wird gut funktionieren ...

    
Jitesh 11.04.2011 06:52
quelle
0

Sie können auch aslo innerText von den meisten DOM-Elementen verwenden:

%Vor%

Die Tags werden nicht formatiert. Sie können auch \n für neue Zeile und mehr Codes ( \t , \u2623 ...) verwenden. Wenn Sie auch Zeichen fester Größe verwenden möchten, können Sie das einfache <pre> -Tag verwenden.

    
PsychoX 22.02.2017 22:19
quelle

Tags und Links