Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/77.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 使用类名计算类别部分的小计_Javascript_Jquery - Fatal编程技术网

Javascript 使用类名计算类别部分的小计

Javascript 使用类名计算类别部分的小计,javascript,jquery,Javascript,Jquery,我正在做一个基于Excel电子表格的项目,我需要计算预算等。我的表格中有各种类别,我需要计算每个类别的小计。下面是一个屏幕截图,以使其更加清晰: 我的问题是,我不知道如何计算每个类别的小计。现在,我有$('.subcat100.budget')。每个(function()。类“subcat100”附加到tr并更改每个类别部分(subcat100、subcat200、subcat300等)。数值基于存储在数据库中的子类别编号。我如何提取所有这些类并遍历它们 jQuery: $(docum

我正在做一个基于Excel电子表格的项目,我需要计算预算等。我的表格中有各种类别,我需要计算每个类别的小计。下面是一个屏幕截图,以使其更加清晰:

我的问题是,我不知道如何计算每个类别的小计。现在,我有$('.subcat100.budget')。每个(function()。类“subcat100”附加到tr并更改每个类别部分(subcat100、subcat200、subcat300等)。数值基于存储在数据库中的子类别编号。我如何提取所有这些类并遍历它们

jQuery:

    $(document).ready(function() {

        $('input[name="txtQuantity[]"],input[name="txtUnitCost[]"]').change(function(e) {
            var budget = 0;
            var $row = $(this).parent().parent();
            var quanity = $row.find('input[name="txtQuantity[]"]').val();
            var unitcost = $row.find('input[name="txtUnitCost[]"]').val();
            budget = parseFloat(quanity * unitcost);
            var decimal = budget.toFixed(2);
            $row.find('.budget').val(decimal);

            var sum = 0;
            $('.subcat100 .budget').each(function() {
                var budgets = $(this).val();
                console.log(budgets);
                if (IsNumeric(budgets)) {
                    sum += parseFloat(budgets, 10);
                }
            });
            $('.subcat100 .budgetsubtotal').val(sum);
        });

        function IsNumeric(input) {
            return (input - 0) == input && input.length > 0;
        }

    });
HTML:


100
土地购买成本
小计

好吧,我最后做了这样一件事:

    var itemcodes = <?php echo json_encode($arrItemCodes);?>;

    $('input[name="txtQuantity[]"],input[name="txtUnitCost[]"]').change(function(e) {
        var budget = 0;
        var $row = $(this).parent().parent();
        var quanity = $row.find('input[name="txtQuantity[]"]').val();
        var unitcost = $row.find('input[name="txtUnitCost[]"]').val();
        budget = parseFloat(quanity * unitcost);
        $row.find('.budget').val(budget.toFixed(2));

        $.each(itemcodes, function(intIndex, objValue) {
            var sum = 0;
            $('.subcat' + objValue + ' .budget').each(function() {
                var budgets = $(this).val();
                console.log(budgets);
                if (IsNumeric(budgets)) {
                    sum += parseFloat(budgets, 10);
                }
            });
            $('.subcat' + objValue + ' .budgetsubtotal').val(sum.toFixed(2));
        });
    });
var itemcodes=;
$('input[name=“txtQuantity[]”,input[name=“txtnitCost[]”)。更改(函数(e){
var预算=0;
var$row=$(this.parent().parent();
var quantity=$row.find('input[name=“txtQuantity[]”)).val();
var unitcost=$row.find('input[name=“txtnitcost[]”]).val();
预算=浮动(数量*单位成本);
$row.find('.budget').val(budget.toFixed(2));
$.each(项目代码、函数(intIndex、objValue){
var总和=0;
$('.subcat'+objValue+'.budget')。每个(函数(){
var预算=$(this.val();
控制台日志(预算);
if(数字(预算)){
总和+=浮动(预算,10);
}
});
$('.subcat'+objValue+'.budgetsubtotal').val(sum.toFixed(2));
});
});
欢迎其他建议

    var itemcodes = <?php echo json_encode($arrItemCodes);?>;

    $('input[name="txtQuantity[]"],input[name="txtUnitCost[]"]').change(function(e) {
        var budget = 0;
        var $row = $(this).parent().parent();
        var quanity = $row.find('input[name="txtQuantity[]"]').val();
        var unitcost = $row.find('input[name="txtUnitCost[]"]').val();
        budget = parseFloat(quanity * unitcost);
        $row.find('.budget').val(budget.toFixed(2));

        $.each(itemcodes, function(intIndex, objValue) {
            var sum = 0;
            $('.subcat' + objValue + ' .budget').each(function() {
                var budgets = $(this).val();
                console.log(budgets);
                if (IsNumeric(budgets)) {
                    sum += parseFloat(budgets, 10);
                }
            });
            $('.subcat' + objValue + ' .budgetsubtotal').val(sum.toFixed(2));
        });
    });