Heim >Web-Frontend >js-Tutorial >Wie kann ich XML-Strings aus Variablen in JavaScript in verschiedenen Browsern analysieren?

Wie kann ich XML-Strings aus Variablen in JavaScript in verschiedenen Browsern analysieren?

Susan Sarandon
Susan SarandonOriginal
2024-12-12 18:19:13998Durchsuche

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

XML-Parsing für variable Zeichenfolgen in JavaScript

Das Parsen von XML aus einer variablen Zeichenfolge stellt in JavaScript eine Herausforderung dar. Dieser Artikel geht auf diesen Bedarf ein und stellt browserkompatible Lösungen bereit.

Lösung

In modernen Browsern besteht der empfohlene Ansatz darin, den DOMParser() Schnittstelle. Das folgende Snippet analysiert effektiv XML-Zeichenfolgen:

function parseXml(xmlStr) {
   return new window.DOMParser().parseFromString(xmlStr, "text/xml");
}
Für Browser, die DOMParser möglicherweise nicht unterstützen (z. B. IE <= 8), wird jedoch eine Fallback-Lösung bereitgestellt, die

ActiveXObject nutzt:

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");
}
Sobald das XML-Dokument erhalten ist, können Sie es mithilfe von Standard-DOM navigieren Methoden wie

childNodes und getElementsByTagName().

jQuery Solution

jQuery bietet ab Version 1.5 eine praktische

parseXML()-Methode, die denselben Zweck erfüllt wie der obige Code Ausschnitte:

Das obige ist der detaillierte Inhalt vonWie kann ich XML-Strings aus Variablen in JavaScript in verschiedenen Browsern analysieren?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn