我正在我的网站上制作一个贷款支付计算器(www.kreditrunner.dk - 在页面底部)。
编辑:问题通过以下等式解决:
var princ = document.getElementById("amount").value;
var intr = document.getElementById("earlypercent").value/1200;
var term = document.getElementById("time").value;
document.getElementById("result").value = princ * intr / (1 - (Math.pow(1/(1 + intr), term)));
而且我也使用了键盘功能。按下键时,输入尚未收到值,因此结果错误:)
原始帖子:
我有四个输入,分别是金额,每年的利率百分比,付款期限和结果。
<table>
<tr>
<td width="150">
<label for="amount">Lånebeløb (DKK)</label>
<input type="text" id="amount" name="amount" class="input-small">
<label for="earlypercent">ÅOP (%)</label>
<input type="text" id="earlypercent" name="earlypercent" class="input-small">
</td>
<td>
<label for="time">Løbetid (Mdr)</label>
<input type="text" id="time" name="time" class="input-small">
<label for="result"><b>Månedlig betaling (DKK)</b></label>
<input type="text" id="result" name="result" class="input-medium">
</td>
</tr>
</table>
对于前三个输入中的每一个,我都有下面列出的计算结果,它来自以下等式:http://www.wikihow.com/Calculate-a-Loan-Payment
$('#amount').keydown(function () {
var amount = document.getElementById("amount").value;
var earlypercent = document.getElementById("earlypercent").value;
var monthlypercent = earlypercent / 12 * 100;
var time = document.getElementById("time").value;
var negativetime = time * (-1);
var result = 1 + monthlypercent;
result = Math.pow(result, negativetime);
result = 1 - result;
result = monthlypercent / result;
document.getElementById("result").value = result * amount;
});
但是,我的结果很奇怪****。正如您在尝试时所看到的那样(例如,值为1000,10%,12个月),结果为8333.33,应该在83.33左右。实际上应该是87.95左右。
所以我可以将* 100移动到montlypercent中,但是当你看到将金额和制表符写入下一个输入字段时,即使值相同,结果也会改变。似乎没有正确的方程式和keydown功能困扰我:/
请帮忙:)