2017-06-21 63 views
1

我建立试图建立计算上的按钮点击时,基于利率按月支付计算器,我使用的是基本的JavaScript引导。我已经通过了一些答案和问题理顺了一些错误,但我仍然计算器不会产生一个数字。有人可以帮忙吗?构建利率计算器,但它不会产生数字

的HTML:

<div class="row text-muted"> 
        <div class="col-md-5 col-md-offset-1 calc-input"> 
         <h3>Purchase Price</h3> 
         <div class="input-group"> 
          <span class="input-group-addon">£</span> 
          <input type="text" class="form-control" id="pp" placeholder="150,000"> 
         </div> 
        </div> 
        <div class="col-md-5 calc-input"> 
         <h3>Deposit</h3> 
         <div class="input-group"> 
          <input type="text" class="form-control" placeholder="10"> 
          <span class="input-group-addon">%</span> 
         </div> 
         <div class="input-group"> 
          <span class="input-group-addon">£</span> 
          <input type="text" class="form-control" id="dp" placeholder="15,000"> 
         </div> 
        </div> 
       </div> 
       <div class="row text-muted"> 
        <div class="col-md-5 col-md-offset-1"> 
         <div class="input-group"> 
          <input type="text" class="form-control" id="mt" placeholder="25"> 
          <span class="input-group-addon">Years</span> 
         </div> 
        </div> 
        <div class="col-md-5"> 
         <div class="input-group"> 
          <input type="text" class="form-control" id="ir" placeholder="4"> 
          <span class="input-group-addon">%</span> 
         </div> 
        </div> 
       </div> 
       <div class="row text-muted"> 
        <div class="col-md-10 col-md-offset-1 text-center"> 
         <button type="submit" class="btn btn-cta" onclick="calculate()">Calculate</button> 
         <h3>Estimated Monthly Payment:</h3> 
         <p id="result"></p> 
        </div> 
       </div> 

这是JS:

function calculate() { 
var pp = document.getElementById("pp").value(); 
var dp = document.getElementById("dp").value(); 
var mt = document.getElementById("mt").value(); 
var ir = document.getElementById("ir").value(); 
var result = document.getElementById("result"); 

var la = pp - dp; 
var intRate = (ir/100)/12; 
var months = mt * 12; 

var monthlyPayment = ((((la*intRate)/(1-Math.pow(1+intRate,(-1*months)))*100)/100).toFixed(2)); 

result.innerHTML = monthlyPayment;} 
+2

你检查错误的浏览器控制台?此外,为什么你有'()'在年底'.value'? – NewToJS

回答

2

只是删除()同时呼吁document.getElementById("pp").value() 作为

var pp = document.getElementById("pp").value; 
    var dp = document.getElementById("dp").value; 
    var mt = document.getElementById("mt").value; 
    var ir = document.getElementById("ir").value; 

value不是一个函数。 这里是一个link到工作plunker

+0

太感谢你了!马上工作! – Michael