2012-08-03 48 views
0

我很新的XML和我有試圖讓parentnode名XML使用Javascript,試圖尋父的

<?xml version="1.0" encoding="UTF-8" ?> 
<response uri="/crm/private/xml/Contacts/getSearchRecords"> 
    <result> 
     <Contacts> 
      <row no="1"> 
       <FL val="CONTACTID">545094000000127015</FL> 
       <FL val="First Name"><![CDATA[Roger]]></FL> 
       <FL val="Last Name"><![CDATA[Rabbit]]></FL> 
       <FL val="ACCOUNTID">12345678910</FL> 
       <FL val="Account Name"><![CDATA[Warner Bros Inc]]></FL> 
      </row> 
     </Contacts> 
    </result> 
</response> 

在我的JavaScript我能得到孩子們的nodeValues一些問題名稱這樣

parser = new DOMParser(); 
xmlDoc = parser.parseFromString(req.responseText, "text/xml"); 
//I also have the windows one but no need to see it 
var length = xmlDoc.getElementsByTagName("FL").length; 
for (var i = 0; i < length; i++) { 
    alert(xmlDoc.getElementsByTagName("FL")[i].childNodes[0].nodeValue); 
} 

我想:

alert(xmlDoc.getElementsByTagName("FL")[i].nodeValue); 
alert(xmlDoc.getElementsByTagName("FL")[i].childNodes[0].parentNode.nodeValue); 
alert(xmlDoc.getElementsByTagName("FL")[i].childNodes[0].parentNode.nodeName); 

等,但似乎沒有任何工作我要麼得到空值或未定義。 我基本上想得到名字(名字,ACCOUNTID等),所以我可以運行一個switch語句並將節點值放在適當的位置。

謝謝你的幫助!

回答

1

對我來說,它有點不清楚你的意思是「父節點名稱」。感謝你的最後一句話,我想,你想要得到標籤的val屬性?!下面應該幫助上:

alert(xmlDoc.getElementsByTagName("FL")[i].getAttribute('val')); 

我推薦你使用JavaScript控制檯和console.log,而不是alert

希望它有幫助。祝你有美好的一天。

+0

謝謝,那就是我正在尋找的。 – 2012-08-03 15:50:38