Javascript和货币

时间:2014-01-14 03:46:29

标签: javascript

我想总结一个简单的货币 这是我的代码

function calculateText2(){

var op11=document.getElementById('home_mortgage');
var op22=document.getElementById('credit_card');
var op33=document.getElementById('car_loan');
var op44=document.getElementById('personal_loan');
var op55=document.getElementById('tax_debt');
var op66=document.getElementById('other_investment');
var op77=document.getElementById('other2');
var op88=document.getElementById('other3');

var result1=document.getElementById('total2');

if(op11.value=="" || op11.value!=parseFloat(op11.value)) op11.value=0;

if(op22.value=="" || op22.value!=parseFloat(op22.value)) op22.value=0;
if(op33.value=="" || op33.value!=parseFloat(op33.value)) op33.value=0;
if(op44.value=="" || op44.value!=parseFloat(op44.value)) op44.value=0;
if(op55.value=="" || op55.value!=parseFloat(op55.value)) op55.value=0;
if(op66.value=="" || op66.value!=parseFloat(op66.value)) op66.value=0;
if(op77.value=="" || op77.value!=parseFloat(op77.value)) op77.value=0;
if(op88.value=="" || op88.value!=parseFloat(op88.value)) op88.value=0;

result1.value=0;

result.value=parseInt(result.value);

result.value=parseInt(result.value)+parseInt(op1.value)+parseInt(op2.value)+parseInt(op3.value)+parseInt(op4.value)+parseInt(op5.value)+parseInt(op6.value)+parseInt(op7.value)+parseInt(op8.value);}

问题是,它总结了数字,但不是小数。 感谢。

1 个答案:

答案 0 :(得分:0)

这是因为你正在解析整数而不是浮点数(你忽略了字符串的小数部分)尝试将parseInt更改为parseFloat

result.value=parseFloat(result.value);

result.value=parseFloat(result.value)+parseFloat(op1.value)+parseFloat(op2.value)+parseFloat(op3.value)+parseFloat(op4.value)+parseFloat(op5.value)+parseFloat(op6.value)+parseFloat(op7.value)+parseFloat(op8.value);