多个复选框总值并应用折扣

时间:2015-06-28 13:32:49

标签: javascript html

我正在尝试获得一个总计,然后如果选择了多个复选框来应用折扣。

价格基于时间。所以...
背部按摩= 30分钟= 50美元 颈部按摩= 30分钟= 50美元 腿和脚= 30分钟= 50美元 总计=(如果选择一个然后价格= 50美元)
如果超过一个然后申请25美元的折扣 提交电子邮件将发送给客户。所以它不是一个电子商务网站,也不是服务器端计算的必要条件。

这是我目前的代码:

 <script type="text/javascript">
    function checkTotal() {
        document.listForm.total.value = '';
        var sum = 0;
        for (i=0;i<document.listForm.choice.length;i++) {
          if (document.listForm.choice[i].checked) {
            sum = sum + parseInt(document.listForm.choice[i].value);
          }
        }
        document.listForm.total.value = sum;
    }
</script>

<form name="listForm">
<input type="checkbox" name="choice" value="50" onChange="checkTotal()"/>Back Massage - 30 Minutes<br/>
<input type="checkbox" name="choice" value="50" onChange="checkTotal()"/>Neck Massage - 30 minutes<br/>
<input type="checkbox" name="choice" value="50" onChange="checkTotal()"/>Shoulder Massage - 30 Minutes<br/>
<input type="checkbox" name="choice" value="30" onChange="checkTotal()"/>Head Massage - 15 minutes<br/>
Total: <input type="text" size="2" name="total" value="0"/>
</form>

1 个答案:

答案 0 :(得分:0)

 function checkTotal() {
        document.listForm.total.value = '';
        var sum = 0;        var o = 0;
        for (i=0;i<document.listForm.choice.length;i++) {
          if (document.listForm.choice[i].checked) {
            sum = sum + parseInt(document.listForm.choice[i].value);
              o++;
          }
        }
     if (o>1) {sum=sum-25;}
     document.listForm.total.value = sum;

    }