2013-08-28 215 views
0

我想选择所有父母中的所有儿童类别attribute(tbox,tarea,cts,tox)选择所有父母div标签中的所有儿童div标签

这是我的代码:

<div class='cts'> 

var s = $('div.cts').children().attr('class'); 
alert(s); 

但只显示第一个父第一个子类属性:

<fieldset id="tt"> 
    <div class="cts"> 
     <div class="tbox"> 
      <input type="text" /> 
     </div> 
    </div> 
    <div class="cts"> 
     <div class="tarea"> 
      <input type="hidden"> 
     </div> 
    </div> 
    <div class="cts"> 
     <div class="tss"> 
      <input type="password"> 
     </div> 
    </div> 
    <div class="cts"> 
     <div class="tox"> 
      <input type="text"> 
     </div> 
    </div> 
</fieldset> 
+0

请整理代码并提供JS数组:) – Alex

回答

1

使用find()

$('.cts'.find('*').each(function(){ 

    var attr = $(this).attr('class'); 

    if (typeof attr !== 'undefined' && attr !== false) { 

     alert($(this).attr('myattr')); 
    } 

}); 
2

使用.map获取数组。

var s = $('div.cts').children().map(function() { 
    return $(this).attr('class'); 
}); 
0

试试这个:

var classes = ('div.cts *').map(function() { 
    return $(this).attr('class'); 
}); 

classes将类名称的数组。

0

.attr()只返回第一个,但你可以做到这一点,以获得值

var classes = [] 

$('div.cts').children().each(function(){ 
    classes.push(attr('class')); 
}); 

alert(classes);