2016-03-09 103 views
0

我現在正在計算列中選中的複選框數量。 我正在計數它們並在底部顯示總數。 我的html如下。還有更多的專欄!計算表格列中選中的複選框的數量

<tr> 
    <th>Public Safety</th> 
    <td><div class="text-center"><label class="checkbox-inline"><input type="checkbox" class="chkRootCauseSummary" /> </label></div></td> 
    <td><div class="text-center"><label class="checkbox-inline"><input type="checkbox" class="chkRootCauseSummary" /> </label></div></td> 
    <td><div class="text-center"><label class="checkbox-inline"><input type="checkbox" class="chkRootCauseSummary" /> </label></div></td> 
    <td><div class="text-center"><label class="checkbox-inline"><input type="checkbox" class="chkRootCauseSummary" /> </label></div></td> 
    <td><div class="text-center"><label class="checkbox-inline"><input type="checkbox" class="chkRootCauseSummary" /> </label></div></td> 
    <td><div class="text-center"><label class="checkbox-inline"><input type="checkbox" class="chkRootCauseSummary" /> </label></div></td> 
    <td><div class="text-center"><label class="checkbox-inline"><input type="checkbox" class="chkRootCauseSummary" /> </label></div></td> 
    <td><div class="text-center"><label class="checkbox-inline"><input type="checkbox" class="chkRootCauseSummary" /> </label></div></td> 
    <td><div class="text-center"><label class="checkbox-inline"><input type="checkbox" class="chkRootCauseSummary" /> </label></div></td> 
    <td><div class="text-center"><label class="checkbox-inline"><input type="checkbox" class="chkRootCauseSummary" /> </label></div></td> 
    <td><div class="text-center"><label class="checkbox-inline"><input type="checkbox" class="chkRootCauseSummary" /> </label></div></td> 
    <td><div class="text-center"><label class="checkbox-inline"><input type="checkbox" class="chkRootCauseSummary" /> </label></div></td> 
    <td><div class="text-center"><label class="checkbox-inline"><input type="checkbox" class="chkRootCauseSummary" /> </label></div></td> 
    <td><div class="text-center"><label class="checkbox-inline"><input type="checkbox" class="chkRootCauseSummary" /> </label></div></td> 
    <td></td> 
</tr> 
<tr> 
    <th>SSW/MS</th> 
    <td><div class="text-center"><label class="checkbox-inline"><input type="checkbox" class="chkRootCauseSummary" /> </label></div></td> 
    <td><div class="text-center"><label class="checkbox-inline"><input type="checkbox" class="chkRootCauseSummary" /> </label></div></td> 
    <td><div class="text-center"><label class="checkbox-inline"><input type="checkbox" class="chkRootCauseSummary" /> </label></div></td> 
    <td><div class="text-center"><label class="checkbox-inline"><input type="checkbox" class="chkRootCauseSummary" /> </label></div></td> 
    <td><div class="text-center"><label class="checkbox-inline"><input type="checkbox" class="chkRootCauseSummary" /> </label></div></td> 
    <td><div class="text-center"><label class="checkbox-inline"><input type="checkbox" class="chkRootCauseSummary" /> </label></div></td> 
    <td><div class="text-center"><label class="checkbox-inline"><input type="checkbox" class="chkRootCauseSummary" /> </label></div></td> 
    <td><div class="text-center"><label class="checkbox-inline"><input type="checkbox" class="chkRootCauseSummary" /> </label></div></td> 
    <td><div class="text-center"><label class="checkbox-inline"><input type="checkbox" class="chkRootCauseSummary" /> </label></div></td> 
    <td><div class="text-center"><label class="checkbox-inline"><input type="checkbox" class="chkRootCauseSummary" /> </label></div></td> 
    <td><div class="text-center"><label class="checkbox-inline"><input type="checkbox" class="chkRootCauseSummary" /> </label></div></td> 
    <td><div class="text-center"><label class="checkbox-inline"><input type="checkbox" class="chkRootCauseSummary" /> </label></div></td> 
    <td><div class="text-center"><label class="checkbox-inline"><input type="checkbox" class="chkRootCauseSummary" /> </label></div></td> 
    <td><div class="text-center"><label class="checkbox-inline"><input type="checkbox" class="chkRootCauseSummary" /> </label></div></td> 
    <td></td> 
</tr> 

而我的jQuery至今:

$('#tblRootCauseBody').on('change', 'input[type=checkbox]', function() { 
    $(" #tblRootCauseBody tr:not(:last-child) td:nth-child("+ (that.closest('td').index() - 1) + ")").each(function() { 
     $(this).html(); 
    }); 
}); 
+0

你好,那不是讓我所有的T他在桌上籤到的複選框? –

回答

0

要獲得:nth-child()指數(指數從1開始),就需要加1的.index()值(從0開始)

$('#tblRootCauseBody').on('change', 'input[type=checkbox]', function() { 
 
    var index = $(this).closest('td').index() + 1, 
 
    $checked = $(" #tblRootCauseBody tr:not(:last-child) td:nth-child(" + (index) + ") input:checked"); 
 
    $('#tblRootCauseBody tr:last-child > :nth-child(' + index + ')').text($checked.length); 
 
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> 
 
<table> 
 
    <tbody id="tblRootCauseBody"> 
 
    <tr> 
 
     <th>Public Safety</th> 
 
     <td> 
 
     <div class="text-center"> 
 
      <label class="checkbox-inline"> 
 
      <input type="checkbox" class="chkRootCauseSummary" /> 
 
      </label> 
 
     </div> 
 
     </td> 
 
     <td> 
 
     <div class="text-center"> 
 
      <label class="checkbox-inline"> 
 
      <input type="checkbox" class="chkRootCauseSummary" /> 
 
      </label> 
 
     </div> 
 
     </td> 
 
     <td> 
 
     <div class="text-center"> 
 
      <label class="checkbox-inline"> 
 
      <input type="checkbox" class="chkRootCauseSummary" /> 
 
      </label> 
 
     </div> 
 
     </td> 
 
     <td> 
 
     <div class="text-center"> 
 
      <label class="checkbox-inline"> 
 
      <input type="checkbox" class="chkRootCauseSummary" /> 
 
      </label> 
 
     </div> 
 
     </td> 
 
     <td> 
 
     <div class="text-center"> 
 
      <label class="checkbox-inline"> 
 
      <input type="checkbox" class="chkRootCauseSummary" /> 
 
      </label> 
 
     </div> 
 
     </td> 
 
     <td> 
 
     <div class="text-center"> 
 
      <label class="checkbox-inline"> 
 
      <input type="checkbox" class="chkRootCauseSummary" /> 
 
      </label> 
 
     </div> 
 
     </td> 
 
     <td> 
 
     <div class="text-center"> 
 
      <label class="checkbox-inline"> 
 
      <input type="checkbox" class="chkRootCauseSummary" /> 
 
      </label> 
 
     </div> 
 
     </td> 
 
     <td> 
 
     <div class="text-center"> 
 
      <label class="checkbox-inline"> 
 
      <input type="checkbox" class="chkRootCauseSummary" /> 
 
      </label> 
 
     </div> 
 
     </td> 
 
     <td> 
 
     <div class="text-center"> 
 
      <label class="checkbox-inline"> 
 
      <input type="checkbox" class="chkRootCauseSummary" /> 
 
      </label> 
 
     </div> 
 
     </td> 
 
     <td> 
 
     <div class="text-center"> 
 
      <label class="checkbox-inline"> 
 
      <input type="checkbox" class="chkRootCauseSummary" /> 
 
      </label> 
 
     </div> 
 
     </td> 
 
     <td> 
 
     <div class="text-center"> 
 
      <label class="checkbox-inline"> 
 
      <input type="checkbox" class="chkRootCauseSummary" /> 
 
      </label> 
 
     </div> 
 
     </td> 
 
     <td> 
 
     <div class="text-center"> 
 
      <label class="checkbox-inline"> 
 
      <input type="checkbox" class="chkRootCauseSummary" /> 
 
      </label> 
 
     </div> 
 
     </td> 
 
     <td> 
 
     <div class="text-center"> 
 
      <label class="checkbox-inline"> 
 
      <input type="checkbox" class="chkRootCauseSummary" /> 
 
      </label> 
 
     </div> 
 
     </td> 
 
     <td> 
 
     <div class="text-center"> 
 
      <label class="checkbox-inline"> 
 
      <input type="checkbox" class="chkRootCauseSummary" /> 
 
      </label> 
 
     </div> 
 
     </td> 
 
     <td></td> 
 
    </tr> 
 
    <tr> 
 
     <th>SSW/MS</th> 
 
     <td> 
 
     <div class="text-center"> 
 
      <label class="checkbox-inline"> 
 
      <input type="checkbox" class="chkRootCauseSummary" /> 
 
      </label> 
 
     </div> 
 
     </td> 
 
     <td> 
 
     <div class="text-center"> 
 
      <label class="checkbox-inline"> 
 
      <input type="checkbox" class="chkRootCauseSummary" /> 
 
      </label> 
 
     </div> 
 
     </td> 
 
     <td> 
 
     <div class="text-center"> 
 
      <label class="checkbox-inline"> 
 
      <input type="checkbox" class="chkRootCauseSummary" /> 
 
      </label> 
 
     </div> 
 
     </td> 
 
     <td> 
 
     <div class="text-center"> 
 
      <label class="checkbox-inline"> 
 
      <input type="checkbox" class="chkRootCauseSummary" /> 
 
      </label> 
 
     </div> 
 
     </td> 
 
     <td> 
 
     <div class="text-center"> 
 
      <label class="checkbox-inline"> 
 
      <input type="checkbox" class="chkRootCauseSummary" /> 
 
      </label> 
 
     </div> 
 
     </td> 
 
     <td> 
 
     <div class="text-center"> 
 
      <label class="checkbox-inline"> 
 
      <input type="checkbox" class="chkRootCauseSummary" /> 
 
      </label> 
 
     </div> 
 
     </td> 
 
     <td> 
 
     <div class="text-center"> 
 
      <label class="checkbox-inline"> 
 
      <input type="checkbox" class="chkRootCauseSummary" /> 
 
      </label> 
 
     </div> 
 
     </td> 
 
     <td> 
 
     <div class="text-center"> 
 
      <label class="checkbox-inline"> 
 
      <input type="checkbox" class="chkRootCauseSummary" /> 
 
      </label> 
 
     </div> 
 
     </td> 
 
     <td> 
 
     <div class="text-center"> 
 
      <label class="checkbox-inline"> 
 
      <input type="checkbox" class="chkRootCauseSummary" /> 
 
      </label> 
 
     </div> 
 
     </td> 
 
     <td> 
 
     <div class="text-center"> 
 
      <label class="checkbox-inline"> 
 
      <input type="checkbox" class="chkRootCauseSummary" /> 
 
      </label> 
 
     </div> 
 
     </td> 
 
     <td> 
 
     <div class="text-center"> 
 
      <label class="checkbox-inline"> 
 
      <input type="checkbox" class="chkRootCauseSummary" /> 
 
      </label> 
 
     </div> 
 
     </td> 
 
     <td> 
 
     <div class="text-center"> 
 
      <label class="checkbox-inline"> 
 
      <input type="checkbox" class="chkRootCauseSummary" /> 
 
      </label> 
 
     </div> 
 
     </td> 
 
     <td> 
 
     <div class="text-center"> 
 
      <label class="checkbox-inline"> 
 
      <input type="checkbox" class="chkRootCauseSummary" /> 
 
      </label> 
 
     </div> 
 
     </td> 
 
     <td> 
 
     <div class="text-center"> 
 
      <label class="checkbox-inline"> 
 
      <input type="checkbox" class="chkRootCauseSummary" /> 
 
      </label> 
 
     </div> 
 
     </td> 
 
     <td></td> 
 
    </tr> 
 
    <tr> 
 
     <td></td> 
 
     <td></td> 
 
     <td></td> 
 
     <td></td> 
 
     <td></td> 
 
     <td></td> 
 
     <td></td> 
 
     <td></td> 
 
     <td></td> 
 
     <td></td> 
 
     <td></td> 
 
     <td></td> 
 
     <td></td> 
 
     <td></td> 
 
     <td></td> 
 
     <td></td> 
 
    </tr> 
 
    </tbody> 
 
</table>

+0

OP有可能對行和列感到困惑。他在每一行的末尾提供了一個額外的黑色「td」。 – RRK

+0

不,我不困惑:D這是爲了連續檢查總複選框:) –

+0

哦,這工作。非常感謝! –