XML DOM存取


在本章中,將學習如何存取XML文件的資訊單元的XML DOM節點。 XML DOM的節點結構允許開發人員在樹周圍導航以查詢特定資訊並同時存取資訊。

存取節點

以下是可以存取節點的三種方式 -

  • 通過使用getElementsByTagName()方法
  • 通過迴圈遍歷或遍歷節點樹
  • 通過使用節點關係導航節點樹

1. getElementsByTagName()

此方法允許通過指定節點名稱來存取節點的資訊。它還允許存取節點列表和節點列表長度的資訊。

語法

getElementByTagName()方法具有以下語法 -

node.getElementByTagName("tagname");

其中,

  • node - 是文件節點。
  • tagname - 儲存要獲取其值的節點的名稱。

範例
以下是一個簡單的程式,它演示了方法getElementsByTagName的用法。

<!DOCTYPE html>
<html>
   <body>
      <div>
         <b>FirstName:</b> <span id = "FirstName"></span><br>
         <b>LastName:</b> <span id = "LastName"></span><br>
         <b>Category:</b> <span id = "Employee"></span><br>
      </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","/dom/node.xml",false);
         xmlhttp.send();
         xmlDoc = xmlhttp.responseXML;

         document.getElementById("FirstName").innerHTML = 
         xmlDoc.getElementsByTagName("FirstName")[0].childNodes[0].nodeValue;
         document.getElementById("LastName").innerHTML = 
         xmlDoc.getElementsByTagName("LastName")[0].childNodes[0].nodeValue;
         document.getElementById("Employee").innerHTML = 
         xmlDoc.getElementsByTagName("Employee")[0].attributes[0].nodeValue;
      </script>
   </body>
</html>

在上面的範例中,正在存取節點FirstNameLastNameEmployee的資訊。

  • xmlDoc.getElementsByTagName("FirstName")[0].childNodes[0].nodeValue;此行使用getElementByTagName()方法存取子節點FirstName的值。
  • xmlDoc.getElementsByTagName("Employee")[0].attributes[0].nodeValue; 此行使用getElementByTagName()方法存取節點Employee的屬性值。

2. 遍歷節點

DOM遍歷一章中舉例說明。

3. 遍歷節點

DOM遍歷一章中舉例說明。