循环遍历元素jquery选择器

时间:2012-08-31 14:38:11

标签: javascript jquery

我必须选择包含id属性的元素和具有'child-of-'值的class属性,并遍历选择器返回的元素。

到目前为止,我可以写:

$('.child-of-').each(function(){
...
});

这将选择所有具有包含子元素的元素的元素,这些元素也没有id。 有些元素具有该类但没有任何id属性。  那么如何选择具有'id'属性且id具有一定价值的元素,并且还具有child-of-的类。 ?

例如

 <div id="any1" class="child-of-"></div>
 <div id="any2" class="child-of-"></div>
 <div class="child-of-"></div>

只能选择具有id属性的div。即示例中的前两个div。第三个没有id属性值,因此不应该选择

4 个答案:

答案 0 :(得分:2)

您可以使用attribute selector

$('.child-of-[id]').each(function(){
    ...
});

Fiddle

<小时/> 如果您的课程以child-of-开头,则可以使用attribute starts with选择器:

$('[class^="child-of-"][id]').each(function(){
    ...
});

答案 1 :(得分:1)

要获取属性值,您将使用属性选择器:

$('[id*="child-of-"][class*="child-of-"]').each(function...

子串属性选择器 - http://api.jquery.com/attribute-contains-selector/

答案 2 :(得分:1)

$('[id].child-of-').each(function(){
    ...
});

答案 3 :(得分:0)

您可以使用此选择器:

$('#child-of-.child-of-').each(function(){
    ...
});