2017-09-16 74 views
0

我想getElementsByTagName在xml文件中。 這是我的代碼(.html)。如何通過使用java腳本來讀取xml

<html> 
    <header> 
     <title>Read XML</title> 
    </header> 
    <body> 
     <h1>Hello My Application</h1> 
     <script type="text/javascript"> 
     function readXML() 
     { 
      var xml= new XMLHttpRequest(); 
      xml.open('GET', 'C:\Users\xxx\Testxml.xml'); 
      //xml.send(); 
      var xmlData = xml.responseText; 
      if(!xmlData) 
      { 
       xmlData = (new DOMParser()).parseFromString(xml.responseText, 'text/xml'); 
       var emp = xmlData.getElementsByTagName("employee"); 
       var name= emp[0].getElementsByTagName("name")[0].firstChild.data; 
       document.write("Name = " + name); 
      } 
     } 
     </script> 
     <button onclick="readXML()">Read XML File</button> 
    </body> 
</html> 

我跑filename.html但有錯誤就行var name= emp[0].getElementsByTagName("name")[0].firstChild.data;

這是我的XML文件。

<company> 
    <employee> 
     <name>Chrish</name> 
     <age>40</age> 
     <salary>100</salary> 
    </employee> 
</company> 

請問您能幫我嗎?

Error

回答

0

您是否嘗試過記錄你的XMLDATA的變量,看看是否你實際上是能夠讀取XML文件?因爲,據我所知,在javascript中讀取本地xml文件是不允許的。您可以嘗試通過File API讀取它。詳細瞭解它here

其次,你的if條件似乎不正確。您正在檢查(!xmlData),這意味着它將在xmlData爲空時運行,而它應該在您實際能夠在xmlData變量中獲取數據時運行。