2012-02-27 38 views
3

我需要如何開始一個循環,我可以得到的innerHTML爲3周的div一個div裏面的想法:遍歷一個div內的div

<div id="hi"> 
<div> Item1 </div> 
<div> Item2 </div> 
<div> Item3 </div> 
</div> 

我需要做的是通過搜索功能項目列表並查看常見項目。我知道一種方法是使用document.getElementsByTagName,但我不需要看到每個div的innerHTML。

+3

*我不需要看到每個div的innerHTML *我認爲'innerHTML'正是你想要的嗎?你有沒有看過[一些文檔](https://developer.mozilla.org/en/DOM/element.getElementsByTagName)?你試過什麼了? 'document.getElementsByTagName'是一個好的開始,你現在遇到了什麼問題?很明顯,我們不會做你的功課...... – 2012-02-27 16:51:19

+0

除了將他的任務粘貼到SO問題框之外,它看起來並不像他實際上做過的任何事情。 – 2012-02-27 16:54:45

+0

請解釋你正在嘗試做什麼,「常見項目見」並不能很好地解釋。 – Ben 2012-02-27 16:56:36

回答

8

由於getElementsByTagName()返回一個數組,因此每個元素都可以使用for循環。

var div = document.getElementById('hi'): 
var divs = div.getElementsByTagName('div'); 
var divArray = []; 
for (var i = 0; i < divs.length; i += 1) { 
    divArray.push(divs[i].innerHTML); 
} 

這將推動每一個元件的innerHTMLdivArray變量。

+1

它返回一個'NodeList',而不是一個數組(儘管這裏沒有太大區別)。你的代碼是不正確的順便說一句(看看'我')。 – 2012-02-27 16:54:12

+1

你可能想'push(divs [i] .innerHTML)'對嗎? – 2012-02-27 16:58:47

+0

男孩,我確定衝過那一個。感謝您的關注! – 2012-02-27 17:07:03