Ich möchte einige einfache Daten in einem div anhängen:
$('#msg').append('Some text');
Im Körper denke ich, dass ich die HTML-Datei gerne platzieren muss.
<div id="test">
<div id="msg"></div> //show text inside it.
</div>
Ich möchte jedoch etwas CSS zum #msg
hinzufügen. Zum Beispiel Hintergrundfarbe. Nun, das Problem ist, dass, da #msg
div ständig vorhanden ist, die Hintergrundfarbe auch dann angezeigt wird, wenn der Text nicht daran angehängt ist. Ich habe versucht, css wie "display: none" hinzuzufügen, aber in diesem Fall kann ich den angefügten Text nicht sehen Kann ich es so machen, dass #msg
div nur dann in #test
angezeigt wird, wenn der Text daran angehängt ist ? Vielen Dank.
Die richtige Methode zum Anhängen von text (Einschränkung beim Anhängen von HTML) wäre:
var someText = "Hello, World!";
$('#msg').append(document.createTextNode(someText));
Wenn someText
von einer Benutzereingabe oder etwas anderem stammt, wird dies ordnungsgemäß durch HTML-Code ersetzt. Was sollte verhindern, dass JavaScript-Injection, die dritthäufigste Sicherheitslücke im Internet in der Welt .
Warum nicht verwenden?
$('#msg').html('A styled <span style="background: yellow">paragraph</span>');
$('#msg').show();
Flucht wenn nötig.