let loadXML = function(xmlString){
var xmlDoc=null;
//判斷瀏覽器的類型
//支持IE瀏覽器
if(!window.DOMParser && window.ActiveXObject){ //window.DOMParser 判斷是否是非ie瀏覽器
var xmlDomVersions = ['MSXML.2.DOMDocument.6.0','MSXML.2.DOMDocument.3.0','Microsoft.XMLDOM'];
for(var i=0;i<xmlDomVersions.length;i++){
try{
xmlDoc = new ActiveXObject(xmlDomVersions[i]);
xmlDoc.async = false;
xmlDoc.loadXML(xmlString); //loadXML方法載入xml字符串
break;
}catch(e){
}
}
}
//支持Mozilla瀏覽器
else if(window.DOMParser && document.implementation && document.implementation.createDocument){
try{
/* DOMParser 對象解析 XML 文本並返回一個 XML Document 對象。
* 要使用 DOMParser,使用不帶參數的構造函數來實例化它,然后調用其 parseFromString() 方法
* parseFromString(text, contentType) 參數text:要解析的 XML 標記 參數contentType文本的內容類型
* 可能是 "text/xml" 、"application/xml" 或 "application/xhtml+xml" 中的一個。注意,不支持 "text/html"。
*/
domParser = new DOMParser();
xmlDoc = domParser.parseFromString(xmlString, 'text/xml');
}catch(e){
}
}
else{
return null;
}
return xmlDoc;
}
核心方法
創建文檔對象 DOMParser 對象解析 XML 文本並返回一個 XML Document 對象。
let parser = new DOMParser();
let xmlDoc = parser.parseFromString(res, 'text/xml');
然后就可以獲得你所需要的數據
let needXML = xmlDoc.getElementsByTagName('數據集');
let recordXML = needXML.getElementsByTagName('記錄')[5];
let result = recordXML.getElementsByTagName.innerHTML