0

我有下表行:

<table class="authors-list">
      <tr>
         <td style="font-size:10px;"><a class="deleteRow"> <img src="delete2.png" /></a></td>
         <td ><input type="text" id="product1" name="product1" class="rounded"/></td>
         <td ><input type="text" size='5' id="qty1" name="qty1" class="rounded"/></td> 
         <td class="tdcheckbox"><input type="checkbox"  id="h09_1" name="h09_1" class="rounded"/></td> 
         <td class="tdcheckbox"><input type="checkbox"  id="h12_1" name="h12_1" class="rounded"/></td> 
         <td class="tdcheckbox"><input type="checkbox"  id="h15_1" name="h15_1" class="rounded"/></td> 
         <td class="tdcheckbox"><input type="checkbox"  id="h18_1" name="h18_1" class="rounded"/></td> 
         <td class="tdcheckbox"><input type="checkbox"  id="h21_1" name="h21_1" class="rounded"/></td> 
         <td class="tdcheckbox"><input type="checkbox"  id="h24_1" name="h24_1" class="rounded"/></td> 
         <td class="tdcheckbox"><input type="checkbox"  id="h27_1" name="h27_1" class="rounded"/></td> 
         <td class="tdcheckbox"><input type="checkbox"  id="h30_1" name="h30_1" class="rounded"/></td> 
         <td><input type="hidden" name="checkedsizes_1" id="checkedsizes_1" value="0"></td>
      </tr>
</table>

我想要做的是计算每行上选中复选框的数量。保持我可以拥有动态行数。这不一定是实时的,在提交之前,隐藏字段checkedsizes_1需要设置为该行的选中复选框的数量。

可能有 5 行,因此它需要遍历每个表行(1,2,3...)并计算选中的复选框,然后checkedsizes_X用结果填充相应的输入。

所以我的提交是:

<INPUT TYPE="button" VALUE="Continue" onClick="submitFunction()">

调用的函数是:

<SCRIPT>
function submitFunction() {
   document.sales_order_details.action="/sales/new_autospread_range";
</SCRIPT>

所以我设想这样的事情:

<SCRIPT>

function submitFunction() {
   countcheckboxperrow();
   document.sales_order_details.action="/sales/new_autospread_range";
</SCRIPT>

    <script>
        countcheckboxperrow(){;
        var checkboxes=0;
        //foreach table row in table class="authors-list" count the checkedcheckboxes starting with h. [id^="h"] h being field name first letter      
        //set the corresponsing input in that field row that starts with 
        //repeat for next row id^="checkedsizes"]       
    </script>

提前感谢您的帮助,如果我需要澄清,请告诉我。总之,需要一个脚本来计算该行中选中复选框的数量并使用该值填充隐藏的 ffield。

再次感谢。

小提琴 http://jsfiddle.net/emL6x/2/

4

1 回答 1

2

我还没有测试过,但是用 jQuery 来做这样的事情应该可以做到

countChecks(){
     $('.author-list tr').each(function(){
         var count = 0;
         var hdn = $(this).find('input[name^="checkedsizes"]');
         count = $(this).find(':checkbox:checked').length;
         hdn.val(count);
     });
}
于 2013-04-22T13:22:03.407 回答