jQuery获取所有表行直到class

时间:2015-09-17 08:54:48

标签: jquery loops html-table

我通过ajax从db获得了一个表行,我有这个样本:

<tr class="header packagesTR expand">
   <td>                             
      Boxing Amateur
   </td>
   <td>
      0                                                     
   </td>                                                        
   <td width="20%"><button type="button" class="btn btn-warning pull-left showInclude"><i class="fa fa-minus"></i></button>
   </td>
</tr>
<tr>
   <td>                             
       Sparring Fee 
   </td>
   <td>
      0                                                     
   </td>                                                        

</tr>
<tr>
   <td>     
      Water
   </td>
   <td>
        0                                                       
   </td>                                                        
</tr>
<tr class="header packagesTR expand">
   <td>     
      <input type="hidden" name="category" value="packages">
    <input type="hidden" name="PK" value="2">                           
       Muay Thai Amateur
   </td>
   <td>
    0                                                       
   </td>                                                        
 </tr>

当我点击&#34; .showInclude&#34;按钮,我想获取当前表行和下一个表行,直到下一个类名称&#34;标题&#34;。

我能够通过以下方式获取当前表格。

 $(this).closest('tr.header').html();

如何迭代每个表行直到下一个类?

1 个答案:

答案 0 :(得分:3)

  

我点击“.showInclude”按钮,我想获取当前表行和下一个表行,直到下一个类名称“header”。

您可以使用.nextUntil().add()在集合中添加当前行标题:

var closesrthr= $(this).closest('tr.header');
closesrthr.nextUntil('.header').add(closesrthr).nextUntil('.header').html();
  

我如何迭代每个表行直到下一个类?

您有行当前行.header的行和行,直到下一个第一个兄弟.header。你可以使用每个迭代它们:

var closesrthr= $(this).closest('tr.header');
closesrthr.nextUntil('.header').add(closesrthr).each(function(){
    //do stuff
});

<强> Working Demo