我知道这可能是一个重复的问题,但我一直在寻找年龄,无法弄清楚为什么这不起作用。JavaScript计算输入字段值并显示2位小数精度
我有3个输入字段,小计,增值税和总计:我希望能够填写增值税和总值inpur字段值有小值时输入值,并显示2个十进制palces后。所以:
4将4.00 4.5将输入字段4.50
HTML代码:
<input name="subtotal" id="subtotal" type="number" maxlength="20" min="0" placeholder="00.00" onchange="vatCalculation();" />
<input name="vat" id="vat" type="number" maxlength="20" min="0" placeholder="00.00" readonly="true" />
<input name="total" id="total" type="number" maxlength="20" min="0" placeholder="00.00" readonly="true" />
和JavaScript代码,我目前所面对的是:
function vatCalculation() {
var subtotal = document.getElementById('subtotal').value;
var vat = parseFloat(parseFloat(subtotal) * parseFloat(0.2)).toFixed(2);
var total = parseFloat(parseFloat(subtotal) + parseFloat(vat)).toFixed(2);
document.getElementById('vat').value = vat;
document.getElementById('total').value = total;
}
我不能看到我要去哪里错了。当我在“小计”输入字段中输入10时,“增值税”和“总计”字段将变为2和12.但我希望它们显示2.00和12.00。下面截图:
SOLUTION:
当使用Firefox类型的输入字段= “数量” 不似乎与JavaScript计算工作。解决方法是将其更改为类型=“文本”像J Santosh一样,如下所述,它的工作原理。
[格式号码始终显示2位小数(可能重复http://stackoverflow.com/questions/6134039/format-number-to-always-show-2 -decimal-places) – stevenw00