使用jquery .find()来获取子项

时间:2010-06-23 03:16:28

标签: javascript jquery

我有以下标记:

<div id="items">
   <div class="item">
     <div class="item_box" id="id_1">
       <div class="one" id="one"></div>
     </div>
    </div>
   <div class="item">
     <div class="item_box" id="id_2">
       <div class="one" id="two"></div>
     </div>
    </div>
   <div class="item">
     <div class="item_box" id="id_3">
       <div class="one" id="three"></div>
     </div>
    </div>
 </div>

基本上,我希望能够遍历并获取item_box类中的id值。

这是我正在尝试使用的代码:

$('#items').find(/[id_]/).each(
      function(){
         alert($(this).attr('id'));
      });

虽然这不起作用......我尝试过使用.children,但是这些不会像嵌套那样深。

有什么想法吗?

谢谢!

3 个答案:

答案 0 :(得分:2)

$('#items').find('.item_box').each(function(){
    alert($(this).attr('id'));
});

答案 1 :(得分:0)

你非常接近。以下是您的代码,已修改为搜索#items的儿童,其ID为id_

$('#items *[id^=id_]').each(function(){
    alert($(this).attr('id'));
});

答案 2 :(得分:0)

  1. 按类'item_box'搜索
  2. 迭代它们以收集ID
  3. $(function(){
    
        var child = $('#items').find('div.item_box');
    
        var idArray = new Array();
    
        if(child.length){
    
            $.each(child,function(i,entry){
    
                idArray.push($(this).attr('id'));
    
            });
    
        }
    
        console.log(idArray);
    
    });​
    

    小提琴协助:http://jsfiddle.net/FFp4B/