javascript如何讀取xml?


JavaScript讀取xml的方法:使用DOMParser對象解析XML文本並返回一個XML Document對象。然后調用parseFromString()方法讀取。

 

JavaScript讀取xml文件:

function loadXML(xmlFile){ var xmlDoc=null; //判斷瀏覽器的類型 //支持IE瀏覽器 if(!window.DOMParser && window.ActiveXObject){ 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]); break; }catch(e){ } } } //支持Mozilla瀏覽器 else if(document.implementation && document.implementation.createDocument){ try{ /* document.implementation.createDocument('','',null); 方法的三個參數說明 * 第一個參數是包含文檔所使用的命名空間URI的字符串; * 第二個參數是包含文檔根元素名稱的字符串; * 第三個參數是要創建的文檔類型(也稱為doctype) */ xmlDoc = document.implementation.createDocument('','',null); }catch(e){ } } else{ return null; } if(xmlDoc!=null){ xmlDoc.async = false; xmlDoc.load(xmlFile); } return xmlDoc; }

 

JavaScript讀取xml字符串:

function loadXMLStr(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; }

廣州品牌設計公司https://www.houdianzi.com PPT模板下載大全https://redbox.wode007.com

HTML代碼測試:

<script type="text/javascript"> window.onload = function(){ var text = document.getElementById('aaa').value; var xmldoc=loadXMLStr(text); var elements = xmldoc.getElementsByTagName("major"); for (var i = 0; i < elements.length; i++) { var value = elements[i].getElementsByTagName("class")[0].firstChild.nodeValue; alert(value); } } </script> <textarea id="aaa"> <IS> <year time="2014"> <major name="Computer Science"> <class>1401</class> <class>1402</class> <class>1403</class> <class>1404</class> </major> <major name="Communication Engineering"> <class>1405</class> <class>1406</class> <class>1407</class> <class>1408</class> </major> </year> <year time="2013"> <major name="Computer Science"> <class>1301</class> <class>1302</class> <class>1303</class> <class>1304</class> </major> <major name="Communication Engineering"> <class>1305</class> <class>1306</class> <class>1307</class> <class>1308</class> </major> </year> </IS> </textarea


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM