我正在制作这个表格,它是费用计算器,它有两个字段,费用到期和费用付费然后有一个说平衡,最后第4个字段是文本字段说明状态它使用JavaScript根据余额自动更新为付费它没有付款或分期付款它工作正常,但只有问题是由于某些原因,当输入某些特定值时,状态字段变为空白它不会根据JavaScript应该说明分期更新,这里是我的JavaScript
function ff_feecalc_new_init()
{
setInterval("calc()", 500)
}
function calc(){
ff_getElementByName('status').value='';
ff_getElementByName('balance').value=Number(ff_getElementByName('amountdue').value)-Number(ff_getElementByName('amountpaid').value);
if (ff_getElementByName('amountpaid').value==0 && ff_getElementByName('amountdue').value>0){
ff_getElementByName('status').value="unpaid";
}
if(ff_getElementByName('amountpaid').value>0){
if ((ff_getElementByName('balance').value <ff_getElementByName('amountdue').value){
ff_getElementByName('status').value="installments";
}
}
if (ff_getElementByName('amountpaid').value == ff_getElementByName('amountdue').value && ff_getElementByName('amountpaid').value>0){
ff_getElementByName('status').value="paid";
}
}
我做错了什么?
答案 0 :(得分:0)
建议在javascript比较中使用'==='而不是'=='。尝试使用parseFloat()或parseInt()。
示例:
if (parseInt(ff_getElementByName('amountpaid').value)===0 && parseFloat(ff_getElementByName('amountdue').value)>0){
...
}