XML DOM
XML 的基礎是文件物件模型(DOM),一個DOM 文件是一組層次組織的節點或資訊區塊,透過這個層次結構開發人員可以在導覽樹中尋找特定資訊。
DOM(Document Object Model 文件物件模型)定義了存取和操作文檔的標準方法。
XML DOM
XML DOM(XML Document Object Model)定義了存取和操作XML 文件的標準方法。
XML DOM 把XML 文件當作樹結構來檢視。
所有元素可以透過DOM 樹來存取。可以修改或刪除它們的內容,並建立新的元素。元素,它們的文本,以及它們的屬性,都被認為是節點。
在我們的XML DOM 教學中,您可以學習更多關於XML DOM 的知識。
HTML DOM
HTML DOM 定義了存取和操作HTML 文件的標準方法。
所有HTML 元素可以透過HTML DOM 來存取。
在我們的HTML DOM 教學中,您可以學習更多關於HTML DOM 的知識。 .
載入一個XML 檔案- 跨瀏覽器實例
下面的實例把XML 文件("note.xml")解析到XML DOM 物件中,然後透過JavaScript 提取一些資訊:
實例
<html><body><h1>W3Cschools 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.g etElementById("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 檔案只包含一個<to> 元素,您仍然必須指定陣列索引[0]。這是因為getElementsByTagName() 方法傳回一個陣列。
載入一個XML 字串- 跨瀏覽器實例
下面的實例把XML 字串解析到XML DOM 物件中,然後透過JavaScript 提取一些資訊:
實例
<html><body><h1>W3Cschools 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>試試一下»
在下一節內容中,你將了解如何在HTML 頁面中顯示XML 資料。