Javascript 如何:将价格乘以数量的总和

Javascript 如何:将价格乘以数量的总和,javascript,jquery,Javascript,Jquery,我已经使用list.js的一个修改版本制作了一个价目表 目前,我在每一行产品旁边都有复选框,选中的每个复选框都会添加到正确的总数中 我在每个复选框旁边添加了一个数量输入,但我希望这个数量乘以当前没有js的价格。以下是到目前为止的代码片段 JS: HTML: 如果有人能抽出时间更新JS来执行这样的功能,或者能给我任何指导,我将不胜感激 谢谢。您只需将产品价值乘以相关数量字段即可: 谢谢Rory,马上就来。虽然每次数量变化时都需要重新检查选择,但我可以自己查看。是的,请查看keyup事件。我还建议您

我已经使用list.js的一个修改版本制作了一个价目表

目前,我在每一行产品旁边都有复选框,选中的每个复选框都会添加到正确的总数中

我在每个复选框旁边添加了一个数量输入,但我希望这个数量乘以当前没有js的价格。以下是到目前为止的代码片段

JS:

HTML:

如果有人能抽出时间更新JS来执行这样的功能,或者能给我任何指导,我将不胜感激


谢谢。

您只需将产品价值乘以相关数量字段即可:


谢谢Rory,马上就来。虽然每次数量变化时都需要重新检查选择,但我可以自己查看。是的,请查看keyup事件。我还建议您考虑使用jQuery发送AJAX请求以及连接事件。您可以使代码更短、更简单。
<script>
 function totalIt() {
 var input = document.getElementsByName("product");
 var total = 0;
 for (var i = 0; i < input.length; i++) {
 if (input[i].checked) {
   total += parseFloat(input[i].value);
  }
 }
  document.getElementById("total").value = "£" + total.toFixed(2);
 }
</script>
<tr>
 <td class="id" style="display:none;">1</td>
 <td name="unit" class="unit">300mm Base Unit</td>
 <td name="range" class="range">Amalfi</td>
 <td name="style" class="style">Cream Gloss</td>
 <td name="price" class="price">&pound;45.94
 <input name="product" value="45.94" type="checkbox" class="tickbox" id="squaredThree" onclick="totalIt()"/>
 <label for="squaredThree"></label>
 <input type="number" name="quantity" min="1" max="10" placeholder="Quantity"></td>
</tr>
<tr>
 <td class="id" style="display:none;">1</td>
 <td class="unit">400mm Base Unit</td>
 <td class="range">Amalfi</td>
 <td class="style">Cream Gloss</td>
 <td class="price">&pound;47.94
 <input name="product" value="45.94" type="checkbox" class="tickbox"    id="squaredThree2" onclick="totalIt()"/>
 <label for="squaredThree2"></label>
 <input type="number" name="quantity" min="1" max="10" placeholder="Quantity"></td>
</tr>
function totalIt() {
    var products = document.getElementsByName("product");
    var quantities = document.getElementsByName("quantity");
    var total = 0;
    for (var i = 0; i < products.length; i++) {
        if (products[i].checked) {
            total += parseFloat(products[i].value) * parseInt(quantities[i].value, 10);
        } 
    }
    document.getElementById("total").value = "£" + total.toFixed(2);
}