2011-08-17 51 views
1

我正在使用JavaScript在HTML文件中顯示XML文檔。到目前爲止,一切都顯示良好,但我想顯示XML標記的第二水平<date>如何使用JavaScript document.write與XML的childNodes進行交談?

我的XML片斷如下:

<date> 
    <dow>Monday</dow> 
    <month>08</month> 
    <day>10</day> 
    <year>2011</year> 
</date> 

要顯示第一級標籤,我一直在寫以下文件編寫:

document.write(x[i].getElementsByTagName("date")[0].childNodes[0].nodeValue); 

但是這並不會顯示<date>。我需要定位到childNodes <dow>,<month>,<day><year>。我可以調整我目前的document.write以實現此目的嗎?我對如何解決這個問題有點難以理解,因爲我不想在第一級元素顯示的時候重寫我的整個代碼。

任何幫助將不勝感激。預先感謝您的時間。

回答

2

您可以在任何一個DOMElement使用getElementsByTagName

var date = xml.getElementsByTagName("date")[0]; 
var dow = date.getElementsByTagName("dow")[0].childNodes[0].nodeValue; 
console.log(dow); 

理想情況下,你也應該,如果訪問這些之前存在的節點檢查與foo[0]

http://jsfiddle.net/RT4Qr/

+0

這很酷,謝謝。 – creativeedg10

0

感謝大家的幫助。我最終得到了兒童標籤來閱讀。我實際上能夠使用我用於父標籤的相同代碼;然而,這個document.write的位置與我的腦袋混亂。我不得不重新格式化我的代碼的順序。我將原始代碼放在頁面上的位置不正確,這是一個毫無意義的錯誤。我在這裏通過愚蠢的錯誤學到了很多東西,而且我不會再那樣做。大聲笑。這些都是很好的選擇,所以我感謝你的幫助。我也會看看這些。