为什么在输入每个数字时仍继续添加TOTAL?

时间:2019-03-06 02:05:50

标签: javascript jquery

我想计算总额。 数量=数量*单价

只要输入一位数字,计算就可以正常工作,但是当输入两位或多位数字时,总计将继续加上前一位数字。 例如:

  • 100x1 = 100 -------->第一位数字'1'正常工作

  • 100x10 = 1100 -------->第二个数字“ 0”,开始添加前一个 金额,1000 + 100

  • 100x100 = 11100 -------->第三位数字'0',10000 + 1100
  • 100x1000 = 111100 -------->第四位数字'0',100000 + 11100

下面是代码,

   var total = 0; 

   function calculateTotal() {
        _datatableData.forEach(function (rowData) {
            var ID = rowData.ID;
            var unitPrice = parseFloat($("#txtUnitPrice" + ID).val(), 10);
            var quantity = parseInt($("#txtQuantity" + ID).val(), 10);

            if (!unitPrice) { unitPrice = 0; }
            if (!quantity) { quantity = 0; }

            amount = quantity * unitPrice;
            $("#txtAmount" + ID).val(amount);
       });
       total += amount;
       $("#createPOTotal").val(total);
    }

下面的google drive链接是屏幕截图, https://drive.google.com/drive/folders/1oiqJESgg1lVtz-n9lxN1kQejHPfQ-wY3?usp=sharing

0 个答案:

没有答案