我正在尝试获取具有相同类名{id}的所有id的名称列表test-class
<div class="test-container">
<div class="test-class" id="test-1">
//some markup
</div>
<div class="test-class" id="test-2">
//some markup
</div>
</div>
当我知道他们拥有相同的班级名称时,如何获得test-1
,test-2
的列表?
我尝试了这个但是没有用
var array = jQuery.makeArray($(".test-class").attr("id"));
console.log(array[0]); //test-1
console.log(array[1]); //undefined
似乎.attr只返回第一个id而不会捕获剩余的id。任何帮助都会很棒。
答案 0 :(得分:1)
您可以使用$.map
函数:
var arr = $.map($(".test-class"), function(el, i) {return el.id});
console.log(arr[0]); //test-1
console.log(arr[1]); //test-2
作为旁注,如果没有jQuery,这将很难做到:
var elems = document.getElementsByClassName('test-class'),
arr = [];
for (i=0; i<elems.length; i++) {
arr.push(elems[i].id);
}
答案 1 :(得分:0)
您可以使用$.each
var ids = []
$.each($('div.test-class'), function(idx, el) {
ids.push(el.id)
});