从jQuery集中获取每个元素的属性值到数组中

时间:2011-03-16 15:51:24

标签: jquery attributes jquery-selectors

如何获取与jQuery选择器匹配的所有元素的所有属性(例如href)?

4 个答案:

答案 0 :(得分:28)

这样的东西
var idArray = $(".someClass").map(function(){
    return this.id
}).get().join(',');

Working demo

答案 1 :(得分:19)

或许这样的事情?

var ids = [];

$('.myClass').each(function () {
  ids.push($(this).attr('id')); // ids.push(this.id) would work as well.
});

答案 2 :(得分:0)

使用Underscore.js更简单的解决方案

例如:获取所有链接的父母类别为someClass的文本

_.pluck($('.someClass').find('a'), 'text');

Working fiddle

答案 3 :(得分:0)

使用jQuery arrow functions和ES6 .map()的单一代码:

const ids = $('a.someClass').map((i, el) => el.getAttribute('href')).get();

console.log(ids);
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<a href="test1" class="someClass">t1</a>
<a href="test2" class="someClass">t2</a>
<a href="test3" class="someClass">t3</a>