asked on October 14, 2015
•
Show version history
After setting up a javascript calculation with 2 fields with decimals, I get a total with a long number after the decimal place. I am looking to shorten it to 2 numbers after the decimal place. Upon trying to add .tofixed(2) ended up breaking the calculation. Any suggestion is appreciated, thanks.
$(document).ready(function () { $('.cf-table-block').on('blur', 'input', sumtotal); function sumtotal() { $('.total input').attr('readonly', false); var hours = 0; var rate = 0; var Mat = 0; var ODC = 0; var LC = 0; var AO = 0; var SGA = 0; var Profit = 0; var total = 0; var subtotal = 0; $('.cf-table-block tbody tr').each(function () { hour = parseNumber($(this).find('.hours input').val()); rate = parseNumber($(this).find('.rate input').val()); Mat = parseNumber($(this).find('.Mat input').val()); ODC = parseNumber($(this).find('.ODC input').val()); LC = parseNumber($(this).find('.LC input').val()); AO = parseNumber($(this).find('.AO input').val()); SGA = parseNumber($(this).find('.SGA input').val()); Profit = parseNumber($(this).find('.Profit input').val()); subtotal = (hour * rate)+Mat+ODC+LC+AO+SGA+Profit; $(this).find('.total input').val(subtotal); total += subtotal; }); //$('.Grandtotal input').val(total); } function parseNumber(n) { var f = parseFloat(n); //Convert to float number. return isNaN(f) ? 0 : f; //treat invalid input as 0; } });
0
0