DOM(Document Object Model 文檔對(duì)象模型)定義了訪問(wèn)和操作文檔的標(biāo)準(zhǔn)方法。
XML DOM
XML DOM(XML Document Object Model)定義了訪問(wèn)和操作 XML 文檔的標(biāo)準(zhǔn)方法。
XML DOM 把 XML 文檔作為樹結(jié)構(gòu)來(lái)查看。
所有元素可以通過(guò) DOM 樹來(lái)訪問(wèn)??梢孕薷幕騽h除它們的內(nèi)容,并創(chuàng)建新的元素。元素,它們的文本,以及它們的屬性,都被認(rèn)為是節(jié)點(diǎn)。
在我們的 XML DOM 教程中,您可以學(xué)習(xí)更多有關(guān) XML DOM 的知識(shí)。
HTML DOM
HTML DOM 定義了訪問(wèn)和操作 HTML 文檔的標(biāo)準(zhǔn)方法。
所有 HTML 元素可以通過(guò) HTML DOM 來(lái)訪問(wèn)。
在我們的 HTML DOM 教程中,您可以學(xué)習(xí)更多有關(guān) HTML DOM 的知識(shí)。.
加載一個(gè) XML 文件 - 跨瀏覽器實(shí)例
下面的實(shí)例把 XML 文檔("note.xml")解析到 XML DOM 對(duì)象中,然后通過(guò) JavaScript 提取一些信息:
實(shí)例
<html> <body> <h1>php.cn</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, Safari xmlhttp=new XMLHttpRequest(); } else {// code for IE6, IE5 xmlhttp=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>
運(yùn)行實(shí)例 ?
點(diǎn)擊 "運(yùn)行實(shí)例" 按鈕查看在線實(shí)例
重要注釋!
如需從上面的 XML 文件("note.xml")的 <to> 元素中提取文本 "Tove",語(yǔ)法是:
請(qǐng)注意,即使 XML 文件只包含一個(gè) <to> 元素,您仍然必須指定數(shù)組索引 [0]。這是因?yàn)?getElementsByTagName() 方法返回一個(gè)數(shù)組。
加載一個(gè) XML 字符串 - 跨瀏覽器實(shí)例
下面的實(shí)例把 XML 字符串解析到 XML DOM 對(duì)象中,然后通過(guò) JavaScript 提取一些信息:
實(shí)例
<html> <body> <h1>PHP.CN</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>
運(yùn)行實(shí)例 ?
點(diǎn)擊 "運(yùn)行實(shí)例" 按鈕查看在線實(shí)例