DOM(Document Object Model 文檔對象模型)定義了訪問和操作文檔的標(biāo)準(zhǔn)方法。
XML DOM(XML Document Object Model)定義了訪問和操作 XML 文檔的標(biāo)準(zhǔn)方法。
XML DOM 把 XML 文檔作為樹結(jié)構(gòu)來查看。
所有元素可以通過 DOM 樹來訪問??梢孕薷幕騽h除它們的內(nèi)容,并創(chuàng)建新的元素。元素,它們的文本,以及它們的屬性,都被認(rèn)為是節(jié)點(diǎn)。
在我們的 XML DOM 教程中,您可以學(xué)習(xí)更多有關(guān) XML DOM 的知識。
HTML DOM 定義了訪問和操作 HTML 文檔 的標(biāo)準(zhǔn)方法。
所有 HTML 元素可以通過 HTML DOM 來訪問。
在我們的 HTML DOM 教程中,您可以學(xué)習(xí)更多有關(guān) HTML DOM 的知識。.
下面的實(shí)例把 XML 文檔("note.xml")解析到 XML DOM 對象中,然后通過 JavaScript 提取一些信息:
實(shí)例
<html><body><h1>W3Schools Internal Note</h1><div><b>To:</b> <span id="to"></span><br /><b>From:</b> <span id="from"></span><br /><b>Message:</b> <span id="message"></span></div><script>if (window.XMLHttpRequest) {// code for IE7+, Firefox, Chrome, Opera, Safarixmlhttp=new XMLHttpRequest(); }else{// code for IE6, IE5xmlhttp=new ActiveXObject("Microsoft.XMLHTTP"); } xmlhttp.open("GET","note.xml",false); xmlhttp.send(); xmlDoc=xmlhttp.responseXML;document.getElementById("to").innerHTML= xmlDoc.getElementsByTagName("to")[0].childNodes[0].nodeValue;document.getElementById("from").innerHTML= xmlDoc.getElementsByTagName("from")[0].childNodes[0].nodeValue;document.getElementById("message").innerHTML= xmlDoc.getElementsByTagName("body")[0].childNodes[0].nodeValue;</script></body></html>
如需從上面的 XML 文件("note.xml")的 <to> 元素中提取文本 "Tove",語法是:
getElementsByTagName("to")[0].childNodes[0].nodeValue
請注意,即使 XML 文件只包含一個(gè) <to> 元素,您仍然必須指定數(shù)組索引 [0]。這是因?yàn)?getElementsByTagName() 方法返回一個(gè)數(shù)組。
下面的實(shí)例把 XML 字符串解析到 XML DOM 對象中,然后通過 JavaScript 提取一些信息:
實(shí)例
<html><body><h1>W3Schools Internal Note</h1><div><b>To:</b> <span id="to"></span><br /><b>From:</b> <span id="from"></span><br /><b>Message:</b> <span id="message"></span></div><script>txt="<note>"; txt=txt+"<to>Tove</to>"; txt=txt+"<from>Jani</from>"; txt=txt+"<heading>Reminder</heading>"; txt=txt+"<body>Don't forget me this weekend!</body>"; txt=txt+"</note>";if (window.DOMParser) { parser=new DOMParser(); xmlDoc=parser.parseFromString(txt,"text/xml"); }else // Internet Explorer{ xmlDoc=new ActiveXObject("Microsoft.XMLDOM"); xmlDoc.async=false; xmlDoc.loadXML(txt); }document.getElementById("to").innerHTML= xmlDoc.getElementsByTagName("to")[0].childNodes[0].nodeValue;document.getElementById("from").innerHTML= xmlDoc.getElementsByTagName("from")[0].childNodes[0].nodeValue;document.getElementById("message").innerHTML= xmlDoc.getElementsByTagName("body")[0].childNodes[0].nodeValue;</script></body></html>
聯(lián)系客服