如何选择具有类名的元素并使用javascript添加到数组中

时间:2015-03-20 04:25:18

标签: javascript html element

我有这个HTML代码,

<div id=menu>
 <div class=other></div>
 <div class=select></div>
 <div class=select></div>
</div>

如何选择所有具有“select”类名的div并将其添加到数组中?

我尝试了这段代码,但没有按照我的预期行事,

var arr = document.getElementById('menu').children;
for(int i=0;i<arr.length;i++){
 if(arr[i].className=='select'){ 
  //do following
 }
}

2 个答案:

答案 0 :(得分:0)

您可以使用document.getElementsByClassName(classname)

selectdivs = document.getElementsByClassName('select')

由于该函数返回一个列表。

或者,您可以创建一个空白列表并推送有效的div s:

all = []
for(var i = 0;i < document.getElementById("menu").children.length;i++){
    div=document.getElementById("menu").children[i];
    if(div.className == "select"){
         all.push(div)
    }
}

答案 1 :(得分:0)

您可以使用另一个数组来存储所需的元素:

var arr = document.getElementById('menu').children;
var eleArray = [];
for(int i=0;i<arr.length;i++){
 if(arr[i].className=='select'){ 
  eleArray.push(arr[i]);
 }
}

如果找不到menu的孩子,你可以直接使用document.getElementsByClassName('select'),它会返回类select所有元素的数组。