2011-11-28 63 views
4

我通过网页解析,并且需要返回标记有特定属性的任何元素的每个属性VALUE(注意:不是元素)。jQuery:指定属性的每个实例的返回值

页面示例如下。结构和排序从页面到页面有所不同,但我只集中在返回attrX的每个实例的值(红,蓝,绿,紫等)

<div attrX="red"></div> 
<div attrX="blue"></div> 
<span attrX="green></span> 
<div> 
    <p attrX="purple"></p> 
</div> 

我如何使用jQuery以下列格式返回属性'attrX'的页面上每个实例的值的数组(顺序实际上并不重要)?

[0]->"red" 
[1]->"blue" 
[2]->"green" 
[3]->"purple" 

谢谢!

回答

6

尝试以下操作:

var values = []; 
$('[attrX]').each(function() { 
    var value = $(this).attr('attrX'); 
    values.push(value); 
}); 

See here for jsFiddle.

+0

哦,我不知道你可以选择基于其属性的元素? – user954912

+0

是的,请参阅http://api.jquery.com/category/selectors/attribute-selectors/了解选择器的所有变体。 –

1

试试这个:

var values = $('[attrX]').map(function() { 
    return $(this).attr('attrX'); 
}).get(); 
相关问题