次の Jquery スクリプトを使用して、請求書の合計をリアルタイムで計算しています。問題は、小計を小数点以下 2 桁に四捨五入できないことです。
行を追加すると:
subtotal= (subtotal).toFixed(2);
後
subtotal += parseFloat(rawValue);
またはこれを試してください:
subtotal += parseFloat(rawValue).toFixed(2);
スクリプトが壊れているようで、何も得られません。VAT と総計を四捨五入することができましたが、何らかの理由で小計を取得できません。:-S .
<script type="text/javascript">
$(document).ready(function () {
// Calculate sub total
$('input').on('keyup', function () {
var rawValue, subtotal = 0;
$('span[id^="linetotal"]').each(function(i, elem){
rawValue = $.trim($(this).text());
if(rawValue == '') rawValue = 0;
discount = $('#discount').val();
subtotal += parseFloat(rawValue);
});
$('#subtotal').text(subtotal - discount);
$('#subtotalT').val(subtotal - discount);
// Calculate vat amount
var vatrate = '<?php echo($vatrate);?>';
subtotal = $('#subtotal').text(),
totalprice = parseFloat(subtotal);
vatamount = (totalprice / 100 * vatrate).toFixed(2);
$('#vat').text(vatamount);
$('#vatT').val(vatamount);
// Calculate grand total
vatamounttoadd = parseFloat(vatamount);
subtotaltoadd = parseFloat(subtotal);
grandtotal = (subtotaltoadd + vatamounttoadd).toFixed(2);
$('#grandtotal').text(grandtotal);
$('#grandtotalT').val(grandtotal);
}); });
</script>