计算器结果很奇怪

Calculator results weird

本文关键字:结果 计算器      更新时间:2023-09-26

我的计算器在结果中放了一些奇怪的东西,我已将其添加到jsfiddle中,供你们快速浏览。

如果我把 4000 作为我的本金和 1 年,我放 1% 的利息,它会重复本金和利息的相同值,它也每隔一个月跳过一次,但如果我把利率定为 20%,它会开始正确倒计时本金和利息的结果。这有点奇怪。

我认为问题出在 intr 变量上,但我不太确定如何解决它。

   function totalF(){
    var body = document.body;
    var tbl = document.createElement('table');
    tbl.setAttribute('id', 'results');
    var tblBody = document.createElement('tbody');
    var tndiv = document.getElementById('tdcontainer');
    for (var j = 1; j < payments; j++){
    var row = document.createElement('tr');
        temp = round(principal);
        intr = round((monthly * payments) - principal);
    while(temp>0 && intr>0){    
        if(tndiv != null){
               var cell = document.createElement('td');
               var cell2 = document.createElement('td');
               var cell3 = document.createElement('td');            
               var ndiv =  round(temp);
               var intr = round((monthly * payments) - principal);
               var monthlyn = j;
                cell.innerHTML = ndiv;
                cell2.innerHTML = monthlyn;
                cell3.innerHTML = intr;
                row.appendChild(cell);
                row.appendChild(cell2);
                row.appendChild(cell3);
                j++;
            }
            temp-=monthly;
            intr-=monthly;
            tblBody.appendChild(row);
            }
        tbl.appendChild(tblBody);
        body.appendChild(tbl);
        tbl.setAttribute("border", "1");
        }
    }
}
Timestamp: 17.04.2012 23:13:22
Error: document.loandata.payment is undefined
Source File: http://fiddle.jshell.net/_display/
Line: 86

请改用document.getElementById('loandata').payment。对其他表单元素执行相同的操作,甚至更好地使用var form = document.getElementById('loandata');,然后form.payment等。

您还尝试在其他地方以无效的方式访问元素。如果元素具有 ID,请使用 document.getElementById('yourId') 访问它,而不是 document.yourIddocument.someElement.yourId

除此之外,您需要在分号后添加缺少的引号:

<div id="visualization" style="width: 750px;></div>