簡體   English   中英

為什么我無法獲得此xml文件所需標簽的名稱

[英]why I can't get the name of the desired tag of this xml file

我嘗試獲取頭部的子節點的名稱->文本節點 (所以我在編寫時需要Buut

var headerstyles = xmlDoc.getElementsByTagName("head")[0].getElementsByTagName("style")[0].childNodes; 

   for (i=0;i<headerstyles.length;i++) 
   {
        alert (headerstyles[i].nodeName);

   }

我得到回復# 文本顏色#文本字體#文本

因此,在看到實際的NodeName之前,我不明白為什么會得到此#text以及如何解決此問題。

這是我的代碼

xmlhttp.open("GET","desc.xml",false);
    xmlhttp.send();
    alert (xmlhttp.responseText);
    xmlDoc=xmlhttp.responseXML;
    alert (xmlDoc);




     var headerstyles = xmlDoc.getElementsByTagName("head")[0].getElementsByTagName("style")[0].childNodes; 

   for (i=0;i<headerstyles.length;i++) 
   {
        alert (headerstyles[i].nodeName);

   }

這是我的desc.xml

<docs>
 <main>
   <bgrnd>
     <img> </img>
     <color> </color>
   </bgrnd>

   <head>
     <text>Learning about Birds</text>
     <style>
       <color>red</color>
       <font>italic bold 30px Georgia,serif</font>

     </style>
   </head>


   <text>
     <link>  
       <l>   
         <dscrpt>Lesson 1 - Diet and feeding; Water and Drinking</dscrpt>
         <hrf> diet.html </hrf>
       </l>

       <l>
         <dscrpt>Lesson 2 - Feather Care </dscrpt>
         <hrf> feather.html  </hrf>
       </l>

       <l>
         <dscrpt>Lesson 3  - Level three  </dscrpt>
         <hrf> item3.html  </hrf>
       </l>

     </link> ... and so on

.....................................................

#text是指文本節點。 在您的情況下,您將使用children而不是childNodes

xmlhttp.open("GET","desc.xml",false);
    xmlhttp.send();
    alert (xmlhttp.responseText);
    xmlDoc=xmlhttp.responseXML;
    alert (xmlDoc);




     var headerstyles = xmlDoc.getElementsByTagName("head")[0].getElementsByTagName("style")[0].children; 

   for (i=0;i<headerstyles.length;i++) 
   {
        alert (headerstyles[i].nodeName);

   }

此處看到子節點與子節點之間的差異

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM