Maison > interface Web > js tutoriel > Comment puis-je analyser des chaînes XML à partir de variables en JavaScript sur différents navigateurs ?

Comment puis-je analyser des chaînes XML à partir de variables en JavaScript sur différents navigateurs ?

Susan Sarandon
Libérer: 2024-12-12 18:19:13
original
1002 Les gens l'ont consulté

How Can I Parse XML Strings from Variables in JavaScript Across Different Browsers?

Analyse XML pour les chaînes variables en JavaScript

L'analyse XML à partir d'une chaîne variable présente un défi en JavaScript. Cet article répondra à ce besoin et fournira des solutions compatibles avec les navigateurs.

Solution

Dans les navigateurs modernes, l'approche recommandée consiste à utiliser le DOMParser()interface. L'extrait suivant analyse efficacement les chaînes XML :

function parseXml(xmlStr) {
   return new window.DOMParser().parseFromString(xmlStr, "text/xml");
}
Copier après la connexion

Cependant, pour les navigateurs qui ne prennent pas en charge DOMParser (par exemple, IE <= 8), une solution de secours exploitant ActiveXObject est fournie :

var parseXml;

if (typeof window.DOMParser != "undefined") {
    parseXml = function(xmlStr) {
        return new window.DOMParser().parseFromString(xmlStr, "text/xml");
    };
} else if (typeof window.ActiveXObject != "undefined" &amp;&amp;
       new window.ActiveXObject("Microsoft.XMLDOM")) {
    parseXml = function(xmlStr) {
        var xmlDoc = new window.ActiveXObject("Microsoft.XMLDOM");
        xmlDoc.async = "false";
        xmlDoc.loadXML(xmlStr);
        return xmlDoc;
    };
} else {
    throw new Error("No XML parser found");
}
Copier après la connexion

Une fois le document XML obtenu, vous pouvez le parcourir en utilisant les méthodes DOM standards tels que childNodes et getElementsByTagName().

Solution jQuery

jQuery, à partir de la version 1.5, fournit une solution pratique méthode parseXML() qui sert le même objectif que le code ci-dessus extraits :

var xml = $.parseXML("Stuff");
alert(xml.documentElement.nodeName);

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