0

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

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

4

2 回答 2

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;
}
于 2013-09-05T10:32:39.340 回答
0

你能检查一下这个例子吗

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

它返回“XML”

演示

于 2013-09-05T10:10:36.187 回答