Maison > interface Web > js tutoriel > Comment puis-je ajouter en toute sécurité des chaînes HTML brutes au DOM en JavaScript ?

Comment puis-je ajouter en toute sécurité des chaînes HTML brutes au DOM en JavaScript ?

Susan Sarandon
Libérer: 2024-11-19 05:05:02
original
864 Les gens l'ont consulté

How Can I Safely Append Raw HTML Strings to the DOM in JavaScript?

Conversion de chaînes HTML brutes en éléments DOM pour ajout

JavaScript offre différentes manières de manipuler le contenu HTML, notamment en modifiant les propriétés innerHTML ou innerText de Éléments DOM. Cependant, il est parfois nécessaire de convertir une chaîne HTML brute en un élément DOM à utiliser avec des méthodes comme appendChild().

Utilisation de DOMParser

L'interface DOMParser permet l'analyse Chaînes XML et HTML en éléments DOM. Pour convertir une chaîne HTML brute en élément DOM à l'aide de DOMParser :

var xmlString = "<div><a href='#'>Link</a><span></span></div>";
var doc = new DOMParser().parseFromString(xmlString, "text/xml");
Copier après la connexion

La méthode parseFromString() analyse la chaîne HTML et renvoie un objet Document contenant la structure DOM analysée.

Accès aux éléments DOM

Pour accéder aux éléments DOM individuels dans le document analysé :

console.log(doc.firstChild.innerHTML); // Outputs: <a href='#'>Link...</a>
console.log(doc.firstChild.firstChild.innerHTML); // Outputs: Link
Copier après la connexion

Utilisation

L'élément DOM analysé peut être maintenant transmis à appendChild() ou utilisé pour d'autres tâches de manipulation DOM, telles que :

var parentElement = document.getElementById("container");
parentElement.appendChild(doc.firstChild);
Copier après la connexion

Cela ajoutera effectivement la chaîne HTML analysée en tant qu'élément DOM à l'élément #container.

Remarque : Il est important d'utiliser appendChild() avec l'élément DOM analysé obtenu via DOMParser, plutôt que d'ajouter directement la chaîne HTML brute, car cette dernière peut entraîner des failles de sécurité.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal