2016-04-11 3 views
-1

Hallo, also ich versuche, einen Kredit-Rechner mit einem Drop-Down-Box zu machen. Sie geben den Betrag ein, den Sie leihen möchten, dann erscheint ein Dropdown-Menü mit dem Zinssatz von 6,75% oder 9,71%. Sie geben dann ein, über wie viele Monate Sie Ihr Darlehen zurückzahlen möchten. Aber ich habe alles gemacht, was ich mir vorstellen kann und es funktioniert nicht? Kann mir bitte jemand helfen?Darlehen Rechner mit einer Dropdown-Box usingjavascript

Dank

Dies ist die HTML

<body> 
<p>Loan Amount: €<input id="amount" type="number" min="1" max="1000000" onchange="computeLoan()"></p> 


<p>Interest Rate: 
<select> 
    <option value="" disabled="disabled" selected="selected">Select A Loan Rate</option> 
    <!-- 6.75 loan --> 
    <option value="6.75" input id="interest_rate" onchange="computeLoan()">6.75%</option> 
    <!-- 9.71 loan --> 
    <option value="9.71" input id="interestRate" onchange="computeLoan()">9.75%</option> 
</select> 


<p>Months: <input id="months" type="number" min="1" max="60" value="1" step="1" onchange="computeLoan()"></p> 


<h2 id="payment"></h2> 

Dies ist Javascript

// first function excute at a rate of 6.75% APR 
function computeLoan() 
{ 
    var amount = document.getElementById('amount').value; 

    var interest_rate = document.getElementById('interest_rate').value; 

    var months = document.getElementById('months').value; 

    var interest = (amount * (interest_rate * .01))/months; 

    var payment = ((amount/months) + interest).toFixed(2); 

    payment = payment.toString().replace(/\B(?=(\d{3})+(?!\d))/g, ","); 

    document.getElementById('payment').innerHTML = "Your Monthly Payment = € "+payment; 

} 

// Second function excute at a rate of 9.71% APR 

function computeLoan(){ 
    var amount = document.getElementById('amount').value; 

    var interestRate = document.getElementById('interestRate').value; 

    var months = document.getElementById('months').value; 

    var interest = (amount * (interestRate * .01))/months; 

    var payment = ((amount/months) + interest).toFixed(2); 

    payment = payment.toString().replace(/\B(?=(\d{3})+(?!\d))/g, ","); 

    document.getElementById('payment').innerHTML = "Monthly Payment = $"+payment; 
} 

Wenn jemand mich auf das, was es groß zu tun wäre, helfen könnte! Danke

+0

wo bricht es? Sie erwähnen nicht wirklich das Problem, auf das Sie stoßen? – Fallenreaper

+0

Alle Fehler? ....... –

+0

wenn ich den Code nur eine der Funktionen ausführen, sagen, wenn ich die zweite Funktion auskommentieren, wird die erste Funktion funktionieren und die richtige Menge anzeigen und umgekehrt – ash3030

Antwort

0

Sie können nicht zwei Funktionen haben, die den gleichen Namen haben.

Erstellen Sie eine Funktion mit bedingter Logik, die vom Wert der Auswahl abhängt. Ich hoffe das hilft!

Außerdem sollten Sie das onchange-Attribut auf das select-Element anstelle der Optionselemente verschieben und den Wert der Auswahl übernehmen.

+0

können Sie erklären "Sie sollten das onchange-Attribut auf das select-Element anstelle der Optionselemente verschieben und den Wert der Auswahl übernehmen." In etwas mehr Details zu was bitte tun? nicht 100% sicher dank – ash3030

+0

So etwas wie dies, dann in Ihrem Code, den Zinssatz, den Wert der Auswahl gleich machen. Sie können ein Beispiel sehen [hier] (http://api.jquery.com/val/) –

+0

Ich werde es versuchen, danke – ash3030