XML文档对象模型

文档对象模型(DOM)是XML的基础。 XML文档具有信息单位称为节点的层次结构;DOM是描述这些节点和它们之间的关系的一种方式。.

一个DOM文档是一组层次组织的节点或信息块。这个层次结构允许开发人员通过导航树中寻找特定信息。由于它是基于信息层次,在DOM被认为是基于树的.

另一方面的XML DOM还提供了一个API,允许开发者添加,编辑,移动,或以创建一个应用程序中删除树中的节点在任何点.

示例

下面的例子(sample.html)示出的XML文档(“address.xml”)到一个XML DOM对象,然后从它提取部分信息的JavaScript:

<!DOCTYPE html>
<html>
   <body>
      <h1>YiiBai DOM example </h1>
      <div>
         <b>Name:</b> <span id=name></span><br>
         <b>Company:</b> <span id=company></span><br>
         <b>Phone:</b> <span id=phone></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,/xml/address.xml,false);
         xmlhttp.send();
         xmlDoc=xmlhttp.responseXML;

         document.getElementById(name).innerHTML=
         xmlDoc.getElementsByTagName(name)[0].childNodes[0].nodeValue;
         document.getElementById(company).innerHTML=
         xmlDoc.getElementsByTagName(company)[0].childNodes[0].nodeValue;
         document.getElementById(phone).innerHTML=
         xmlDoc.getElementsByTagName(phone)[0].childNodes[0].nodeValue;
      </script>
   </body>
</html>

address.xml的内容如下:

<?xml version=1.0?>
<contact-info>
   <name>Tanmay Patil</name>
   <company>YiiBai</company>
   <phone>(011) 123-4567</phone>
</contact-info>

现在,让我们保持这两个文件sample.html和address.xml在同一目录/ XML,并在任何浏览器中打开它执行sample.html文件。这应该产生一个输出。

在这里你可以看到每个子节点被提取以显示他们的值。