2017-09-16 13 views
0

xmlファイルにgetElementsByTagNameとしたいです。 これは私のコード(.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を実行するが、エラーがそれは私のxmlファイルで行var name= emp[0].getElementsByTagName("name")[0].firstChild.data;

にあります。

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

お願いします。

Error

答えて

0

あなたはあなたが実際にXMLファイルを読み込むことができるかどうかを確認するためにあなたのです。xmlData変数をログに記録しようとしたことがありますか?なぜなら、私の知る限り、javascriptでローカルXMLファイルを読むことは直接許可されていないからです。あなたはFile APIを通じてそれを読むことができます。それについて詳しくはhereを読んでください。

第2に、if条件が正しくないようです。実際にxmlData変数にデータを取得できるときに、xmlDataが空のときに実行されるはずの(!xmlData)をチェックしています。

関連する問題