如何用jQuery解析xml?

时间:2010-06-16 14:52:14

标签: javascript jquery

以下JavaScript代码的jQuery替代方法是什么?

var xmlobject = (new DOMParser()).parseFromString(xmlstring, "text/xml");

我相信jQuery替代方案会更兼容跨浏览器吗?

3 个答案:

答案 0 :(得分:3)

跨浏览器方法如下,几分钟前我在回答类似问题时发布:

var parseXml;

if (window.DOMParser) {
    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 {
    parseXml = function() { return null; }
}

var xml = parseXml("<foo>Stuff</foo>");
if (xml) {
    window.alert(xml.documentElement.nodeName);
}

答案 1 :(得分:-1)

var $parsedXml = $(xmlstring);

例如,如果您有类似

的内容
<object>
  <property id="prop1" value="myVal" />
</object>

作为xmlstring,您可以

var prop1 = $(xmlstring).find('#prop1').attr('value');

获取对象属性的值。

答案 2 :(得分:-1)