如何使用jquery计算多个总数

时间:2015-01-13 06:44:11

标签: jquery

这是我的脚本如何从多个值中计算总计,我用自动填充表格添加删除行。

我的剧本:

(function() {
    "use strict";

    $("table").on("change", "input", function() {
        var row = $(this).closest("tr");
        var qty = parseFloat(row.find(".quantity").val());
        var price = parseFloat(row.find(".productprice").val());
        var tcost = qty * price;
        row.find(".tcost").val(isNaN(tcost) ? "" : tcost);


    });
    if (!isNaN(tcost))
        total += tcost;
    $("#total").html("EUR " + total);
    row.find(".total").val(isNaN(total) ? "" : total);
})();

1 个答案:

答案 0 :(得分:0)

这应该让你开始:

$(“select”)。change(function(){     var qty = $(this).val();

// get the price cell by moving up a level and searching for
// the descendant with a class name beginning with `price'.
// Remove the dollar sign to do math
var price = $(this).closest("tr")
                   .find("td[class^=price]")
                   .html().split("$")[1];

// a quantity is a whole number but a price is a float
var total = parseInt(qty) * parseFloat(price);

// write the total for this book to the 'total' cell
$(this).closest("tr")
       .find("td[class^=total]")
       .html("$" + total);

// sum up all the totals
var grandTotal = 0;
$("td[class^=total]").each(function() {
    grandTotal += parseFloat($(this).html().split("$")[1]); 
});

// update the grandtotal cell to the new total
$(".grandtotal").html("$" + grandTotal);

});

换句话说,你需要:

1 - 从所选选项的值中获取数量。

2 - 从类别以“price”开头的同一行中的单元格中获取价格,将其乘以数量,然后更新同一行的“总计”单元格。

3 - (重新)计算总计(所有总计的总和)并将该值放入.grandtotal单元格。

在此处试试:http://jsfiddle.net/kYssr/4/