使用jQuery / JavaScript查找XML根元素名称的可靠方法是什么?

时间:2013-09-05 10:07:08

标签: javascript jquery xml

我尝试使用jQuery parse,但只有在按值搜索或事先知道元素名称时才有用。

我需要从文档中获取root element名称。我该如何实现这一目标? 我可以用字符串算法来解决这个问题,但在生产代码中它不是可靠的方法。

2 个答案:

答案 0 :(得分:1)

这是一个针对您的问题的纯JavaScript解决方案(我希望)。

JSFiddle

// The initial string
var xmlString = '<?xml version="1.0" ?><myRoot><someNode></someNode></myRoot>';

// Parse the string with the function defined below
var doc = parseXml(xmlString);

// Extract the name of the root element
var rootName = doc.documentElement.nodeName;

alert(rootName); // Alerts "myRoot" in this example

// Cross-browser function to parse an XML string
function parseXml(xmlString) {
    var doc;
    if (window.ActiveXObject) {
        // Internet Explorer
        doc = new ActiveXObject("MSXML.DOMDocument");
        doc.async = false;
        doc.loadXML(xmlString);
    } else {
        // Other browsers
        var parser = new DOMParser();
        doc = parser.parseFromString(xmlString, "text/xml");
    }
    return doc;
}

答案 1 :(得分:0)

你能检查这个例子吗?

var xml = '<xml><thing>stuff</thing><thing2>value</thing2></xml>';
var firstNodeName = $(xml).attr("nodeName");
alert("The first node name is: " + firstNodeName );

它返回“XML”

Demo