Jquery为表中的项找到多个条件

时间:2012-05-18 01:01:36

标签: jquery

您好我有一张表:

<table class="approvalstable"> 
  ... 
  <tr>
     <td class="projectapproval"> 
       <img src="../../Content/Images/stock_lock.gif" alt="locked" class="lockicon invisibleforprint" /> 
     </td>
     <td>
        <input type="checkbox" class="projectcheckbox approvalcheckbox" checked="checked" />
     </td> 
  </tr>
  <tr>
     <td class="projectapproval"> 
        <img src="../../Content/Images/stock_lock.gif" alt="locked" class="lockicon invisibleforprint" />
     </td>
     <td>
       <input type="checkbox" class="projectcheckbox approvalcheckbox" />
     </td> 
  </tr>
  <tr>
     <td class="projectapproval">
     </td>
     <td>
       <input type="checkbox" class="projectcheckbox approvalcheckbox" />
     </td>
  </tr> 
  ... 
</table> 

到目前为止,为了获得没有锁定图像的行数,我有:

$('.approvalstable td.projectapproval:not(:has(img.lockicon))').length

但是我还要求只获取没有锁定图像的行数,这些行也有一个选中的复选框。

好的,以便通过选中复选框获取号码:

$('.projectcheckbox:checked').length;

有人能告诉我如何将它们结合起来吗?我正在尝试获取单元格中没有锁定图像的行数和同一行中单元格中的已选中复选框。

2 个答案:

答案 0 :(得分:1)

尝试:

$('tr').find('img.lockicon').parents('tr').find('input.projectcheckbox:checked').length

<强> jsFiddle example

答案 1 :(得分:0)

$('.approvalstable td.projectapproval:not(:has(img.lockicon))').filter('.projectcheckbox:checked').length应该可以解决问题。