jquery javascript checkbox radio计算复数形式对象的值之和

时间:2011-02-09 14:12:47

标签: javascript jquery sum checkbox radio

如何计算值的总和复选框,无线电输入类型=文本名称= totalSum

<script type="text/javascript"> 
$(function(){
  $("table input:checkbox").click(function(){
    if ( $(this).is(":checked") ){
      $(this).parents("tbody").find("input:radio").attr("disabled",null);
    }
    else{
      $(this).parents("tbody").find("input:radio").attr("disabled",true);
    }
});
});
</script>



 <form method=POST name=memform><table align=center>
<tbody>
 <tr><td colspan=3><input type=checkbox name=serv1 value=1>ВъездАвто</td></tr> 
 <tr><td><input type=radio price=6000 name=servch1 value=6000 ><a>г/п 10Т</a></td><td><a>Сумма:&nbsp;6000</a></td><td><a>НДС:&nbsp;1200</a></td></tr> 
 <tr><td><input type=radio price=4200 name=servch1 value=4200 ><a>г/п 7Т</a></td><td><a>Сумма:&nbsp;4200</a></td><td><a>НДС:&nbsp;840</a></td></tr>
 <tr><td><input type=radio price=3000 name=servch1 value=3000 ><a>г/п 5Т</a></td><td><a>Сумма:&nbsp;3000</a></td><td><a>НДС:&nbsp;600</a></td></tr>
 <tr><td><input type=radio price=1800 name=servch1 value=1800 ><a>г/п 3Т</a></td><td><a>Сумма:&nbsp;1800</a></td><td><a>НДС:&nbsp;360</a></td></tr>
</tbody> 

<tbody>
 <tr><td colspan=3><input type=checkbox name=serv2 value=2>ХранСутки40фут</td></tr>
 <tr><td><input type=radio price=5300 name=servch2 value=5300 ><a>гружен.</a></td><td><a>Сумма:&nbsp;5300</a></td><td><a>НДС:&nbsp;1060</a></td></tr>
 <tr><td><input type=radio price=3000 name=servch2 value=3000 ><a>порожн.</a></td><td><a>Сумма:&nbsp;3000</a></td><td><a>НДС:&nbsp;600</a></td></tr>
</tbody> 

<tbody>
 <tr><td colspan=3><input type=checkbox name=serv3 value=3>ХранСутки20фут</td></tr>
 <tr><td><input type=radio price=2600 name=servch3 value=2600 ><a>гружен.</a></td><td><a>Сумма:&nbsp;2600</a></td><td><a>НДС:&nbsp;520</a></td></tr>
 <tr><td><input type=radio price=1600 name=servch3 value=1600 ><a>порожн.</a></td><td><a>Сумма:&nbsp;1600</a></td><td><a>НДС:&nbsp;320</a></td></tr>
</tbody> 

 <tbody>
 <tr><td colspan=3><input type=checkbox name=serv4 value=4>Очистка конт.</td></tr>
 <tr><td><input type=radio price=2700 name=servch4 value=2700 ><a>среднетон.</a></td><td><a>Сумма:&nbsp;2700</a></td><td><a>НДС:&nbsp;540</a></td></tr>
 <tr><td><input type=radio price=6300 name=servch4 value=6300 ><a>20фут</a></td><td><a>Сумма:&nbsp;6300</a></td><td><a>НДС:&nbsp;1260</a></td></tr>
 <tr><td><input type=radio price=11500 name=servch4 value=11500 ><a>40фут</a></td><td><a>Сумма:&nbsp;11500</a></td><td><a>НДС:&nbsp;2300</a></td></tr>
</tbody>

<tr><td><input type=checkbox name=serv9 value=900 ><a>УстнаяСправка</a></td><td><a>Сумма:&nbsp;900</a></td><td><a>НДС:&nbsp;180</a></td></tr>
<tr><td><input type=checkbox name=serv10 value=1800 ><a>УведомлТелефон</a></td><td><a>Сумма:&nbsp;1800</a></td><td><a>НДС:&nbsp;360</a></td></tr>
<tr><td><input type=checkbox name=serv11 value=2200 ><a>ОчисткаРазметка</a></td><td><a>Сумма:&nbsp;2200</a></td><td><a>НДС:&nbsp;440</a></td></tr>
<tr><td><input type=checkbox name=serv19 value=15000 ><a>УведомлТелеграф</a></td><td><a>Сумма:&nbsp;15000</a></td><td><a>НДС:&nbsp;3000</a></td></tr>
<tr><td><input type=checkbox name=serv24 value=42900 ><a>ЭкспедОпер</a></td><td><a>Сумма:&nbsp;42900</a></td><td><a>НДС:&nbsp;8580</a></td></tr>
<tr><td><a>КолКранОпер</a></td><td><a>Кол.&nbsp;</a><input type=text maxlength=2 size=2 name=coef1 value=5><a>&nbsp;Стоим.(ед):&nbsp;11000</a></td><td><a>НДС:&nbsp;2200</a></td></tr>
<tr><td><a>КолПогрузОпер</a></td><td><a>Кол.&nbsp;</a><input type=text maxlength=2 size=2 name=coef2 value=2><a>&nbsp;Стоим.(ед):&nbsp;1000</a></td><td><a>НДС:&nbsp;200</a></td></tr>
<tr><td colspan=3 align="center"><a>Сумма:</a>&nbsp;<input name=totalSum id=totalSum type="text" value="" readonly>
<input type=hidden name=hiddentotal value=0><input type=hidden name=hiddenpriorradio value=0></td></tr><tr><td colspan=3 align="center">&nbsp;<input type="button" value="Exit" onclick="document.location = 'mem.php'" /></td></tr>
</table></form>

3 个答案:

答案 0 :(得分:0)

收集所有可用的已检查无线电和复选框,然后获取它们的值。 丢失price属性,而是使用特殊类(例如“sumCost”)。 [未测试]

var iTotal = 0;
$(".sumCost:checked").each(function(){
  iTotal += $(this).val();
});

$("input[name='totalSum']").val(iTotal );

答案 1 :(得分:0)

有点晚了但是:

  $("table input:radio, table input:checkbox").click(function(){
    var total=0;
    $('table input:checked:enabled').each(function(index) {
          total += parseInt($(this).val());
    });
    $("input[name='totalSum']").val(total)
  });

答案 2 :(得分:0)

您是否在寻找类似的内容:http://jsfiddle.net/AUYKj/