我尝试使用jQuery parse,但只有在按值搜索或事先知道元素名称时才有用。
我需要从文档中获取root element
名称。我该如何实现这一目标?
我可以用字符串算法来解决这个问题,但在生产代码中它不是可靠的方法。
答案 0 :(得分:1)
这是一个针对您的问题的纯JavaScript解决方案(我希望)。
// 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”