2017-03-01 1 views
1

Bearbeiten: Ich habe den Code wie folgt geändert. Jetzt scheint keiner der Code zu funktionieren. (. Sogar meine der Code, der Arbeit tat, und ich habe mit Ihnen nicht teilen)Optionswert auswählen und var (javascript) Wert zuweisen

function berekeningAflostabel() { 
var zaaksoortMsnp; 
var AflostabelPerMaand; 

document.getElementById("fldZaakSoortMsnp").addEventListener("change",  function() { 
    AflostabelPerMaand = this.value; 

    if(AflostabelPerMaand == 1) { 
    zaaksoortMsnp = "Tekst1"; 
    } 
    if(AflostabelPerMaand == 2) { 
    zaaksoortMsnp = "Tekst2"; 
    } 
    if(AflostabelPerMaand == 3) { 
    zaaksoortMsnp = "Tekst3"; 
    } 
    if(AflostabelPerMaand == 4) { 
    zaaksoortMsnp = "Tekst4"; 
    } 
    if(AflostabelPerMaand == 5) { 
    zaaksoortMsnp = "Tekst5"; 
    } 
    if(AflostabelPerMaand == 6) { 
    zaaksoortMsnp = "Tekst6"; 
    } 

    document.getElementById("fldMinimaleAfloswaardePerMaand").value = zaaksoortMsnp; 
    } 
} 

var eventZaaksoortMsnp = document.getElementById("fldZaakSoortMsnp"); 
eventZaaksoortMsnp.addEventListener("change", berekeningAflostabel); 
+1

Hinweis: '=' vs '=='. –

+0

Sie rufen die Funktion nicht in dem von Ihnen angegebenen Code auf! –

+0

Als eine Optimierung setzen Sie einfach den Wert auf '0x' (x ist die Zahl) oder entfernen Sie alle' if's und tun dies: 'var AflostabelPerMaand = '0' + zaaksoortMsnp.value;'! –

Antwort

1

Wenn Sie die gewählte Option der Wert innerhalb des change Zuhörer erhalten möchten, dann sollten Sie verwenden: this.options[this.selectedIndex].value

Sie müssen den Listener nur einmal anwenden. Die letzten beiden Zeilen sind unnötig.

sollte der folgende Code arbeiten:

function berekeningAflostabel() { 
 
    var zaaksoortMsnp; 
 
    var AflostabelPerMaand; 
 

 
    document.getElementById("fldZaakSoortMsnp").addEventListener("change", function() { 
 
    AflostabelPerMaand = this.options[this.selectedIndex].value; 
 

 
    if(AflostabelPerMaand == 1) { 
 
     zaaksoortMsnp = "Tekst1"; 
 
    } 
 
    if(AflostabelPerMaand == 2) { 
 
     zaaksoortMsnp = "Tekst2"; 
 
    } 
 
    if(AflostabelPerMaand == 3) { 
 
     zaaksoortMsnp = "Tekst3"; 
 
    } 
 

 
    document.getElementById("fldMinimaleAfloswaardePerMaand").value = zaaksoortMsnp; 
 
    }); 
 
} 
 

 
berekeningAflostabel();
<select id="fldZaakSoortMsnp"> 
 
    <option value="1">teszt</option> 
 
    <option value="2">teszt</option> 
 
    <option value="3">teszt</option> 
 
</select> 
 

 
<input type="text" id="fldMinimaleAfloswaardePerMaand">

+1

Die 'if's sind in erster Linie unnötig! –

+0

Ja, du hast Recht. Ich habe meinen Kommentar geändert. – kotapeter

+0

Es scheint, dass OP nach dieser Antwort sucht, nicht meins! –

1

Änderung Ihre Funktion diesen

function() { 
    var AflostabelPerMaand = '0' + this.value; 
    document.getElementById("fldMinimaleAfloswaardePerMaand").value = AflostabelPerMaand; 
} 
+0

"Die 01, 02 usw. Werte für AflostabelPerMa und ist ein Dummy-Text." – kotapeter

+0

Der folgende Code – NielsSanders