Ajouter HTML échappé texte: jQuery
Je suis habitué à l'aide de jQuery .append()
méthode pour ajouter du texte ou HTML sur la fin d'un pré-existante de l'élément. Je suis actuellement à l'aide de jQuery .text()
pour échapper à des chaînes qui pourraient contenir du HTML. Malheureusement, il ne semble pas être une méthode jQuery qui aura pour effet d'ajouter les résultats de la .text()
méthode à un élément au lieu de remplacer son contenu.
Est-il un moyen d'ajouter, au lieu de les remplacer, ce échappé de texte d'un élément? Ou est-il une meilleure façon d'échapper à des chaînes contenant du code HTML?
Grâce.
- EDIT -
Un peu plus le contexte: je suis en train de construire une chaîne HTML de façon dynamique, et donc je vais avoir besoin pour être en mesure d'ajouter de multiples éléments à échappé contenu de la programmation.
- Vous pouvez toujours juste à s'échapper de l'HTML séparément, à la stackoverflow.com/questions/6020714/escape-html-using-jquery etc.
Vous devez vous connecter pour publier un commentaire.
Vous pouvez créer un élément "factice" pour contenir le résultat de
.text()
qui peut ensuite être ajouté à votre élément de destination:$('<div/>').text('your <span>html</span> string').html();
. De cette façon, je n'ai pas le réel factice élément dans le texte.document.createTextNode
et d'ajouter que.Que j'ai essayé de nombreuses façons, je pense que la méthode suivante est la façon la plus propre pour ajouter du texte à tout noeud que vous voulez.
pas de stock tag nécessaire, uniquement du texte brut, ce qui aidera à éviter les problèmes potentiels
Vous pouvez simplement utiliser
MODIFIER pour le violon dans mon commentaire, essayez ceci:
jsFiddle
.text
accepte également une fonction:$(whatever).text(function(i, txt) { return txt + foo;});