首页 > web前端 > js教程 > 如何在不同浏览器中解析 JavaScript 中变量的 XML 字符串?

如何在不同浏览器中解析 JavaScript 中变量的 XML 字符串?

Susan Sarandon
发布: 2024-12-12 18:19:13
原创
998 人浏览过

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

JavaScript 中变量字符串的 XML 解析

从变量字符串解析 XML 在 JavaScript 中是一个挑战。本文将解决这一需求并提供与浏览器兼容的解决方案。

解决方案

在现代浏览器中,推荐的方法是使用 DOMParser() 界面。以下代码段有效地解析 XML 字符串:

function parseXml(xmlStr) {
   return new window.DOMParser().parseFromString(xmlStr, "text/xml");
}
登录后复制

但是,对于可能不支持 DOMParser 的浏览器(例如 IE ActiveXObject 的后备解决方案:

var parseXml;

if (typeof window.DOMParser != "undefined") {
    parseXml = function(xmlStr) {
        return new window.DOMParser().parseFromString(xmlStr, "text/xml");
    };
} else if (typeof window.ActiveXObject != "undefined" &&
       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");
}
登录后复制

获得 XML 文档后,您可以使用标准 DOM 方法对其进行导航,例如如 childNodesgetElementsByTagName().

jQuery 解决方案

jQuery 从 1.5 版本开始,提供了一个方便的 parseXML() 方法与上面的代码具有相同的目的片段:

var xml = $.parseXML("<foo>Stuff</foo>");
alert(xml.documentElement.nodeName);
登录后复制

以上是如何在不同浏览器中解析 JavaScript 中变量的 XML 字符串?的详细内容。更多信息请关注PHP中文网其他相关文章!

来源:php.cn
本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
作者最新文章
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板