我有以下代码
function calculateVat() {
var vat = null;var amount=null;
vat = document.getElementById("hiddenvat").value;
amount = document.getElementById("numtxt_itemCost").value;
var total = parseInt(amount)* parseInt(vat) / 100 ;
document.getElementById("txt_Total_text").value = total;
}
这里我是根据金额价格计算增值税价格
E.G 还原值为13.5
如果我在numtxt_itemCost字段输入1780,那么它应该给出输出240.30
但是当我通过在numtxt_itemCost字段上放置值1780来运行此程序时
它显示231.4输出错误
答案 0 :(得分:1)
试试这个:
function calculateVat() {
var vat = null;var amount=null;
vat = document.getElementById("hiddenvat").value;
amount = document.getElementById("numtxt_itemCost").value;
var total = parseInt(amount)* parseFloat(vat) / 100 ;
document.getElementById("txt_Total_text").value = total;
}
问题是你使用parseInt(vat)
将vat转换为“int”,所以你看到的答案是13%增值而不是13.5%的结果。
答案 1 :(得分:1)
您应该使用parseFloat
代替:
parseFloat(1780)* parseFloat(13.5) / 100 //240.3
当您使用parseInt
时,所有小数都会被删除。