我的增值税计算错了

时间:2012-10-19 13:49:01

标签: javascript decimal calculator parseint

我正在尝试用大桶制作小型计算器。

所以我有以下代码:

<script type="text/javascript">
    function calcdebours()
    {
        var taux         = document.getElementById('debours_taux_tva').value;
        var ht_no_tva     = document.getElementById('debours_montant_ht_no_tva').value;
        var ht_tva        = document.getElementById('debours_montant_ht_tva').value;
        var tva= Math.round((((ht_tva)*(taux))/100)*100)/100;
        ;
        if(taux=='')
        {
            taux=0;
        }
        if(ht_no_tva=='')
        {
            ht_no_tva=0;
        }
        if(ht_tva=='')
        {
            ht_tva=0;
        }
        document.getElementById('debours_montant_tva').value = tva  ;
        document.getElementById('debours_montant_ttc').value = (tva) + parseInt(ht_tva)+ parseInt(ht_no_tva)


    }

    </script>

在小提琴下面:

http://jsfiddle.net/6zzRZ/

但是对于所有人来说,这是错误的计算,我认为它不计算分数。

我尝试过使用var 1 + var 2,但它只是用来连接我使用parseInt函数的数字。

它已经奏效,但任何数量的结果都是错误的。

问题是我尝试了parseDecimal,但它说这个函数不存在。

非常感谢任何形式的帮助。

2 个答案:

答案 0 :(得分:1)

使用parseFloat()而不是parseDouble: http://www.w3schools.com/jsref/jsref_parsefloat.asp

答案 1 :(得分:1)

试试parseFloat。或者像这样使用单一+var ht_no_tva = +document.getElementById('debours_montant_ht_no_tva').value;这会给JavaScript提示它应该将值视为数字。

相关问题