Michiel Bosch
Michiel Bosch

Reputation: 1

counting up with for loop in javascript

I want to count my values with a for loop. Probably it is easy but it would really help me! The value of rokenval, roken2val...... is in my html with an option value

Javscript..

function optellen(button, number){

button.addEventListener("click", function(){

    var rokenVal = document.getElementById('roken').value;
    var roken2Val = document.getElementById('roken2').value;
    var bewegenVal = document.getElementById('bewegen').value;
    var bewegen2Val = document.getElementById('bewegen2').value;

    var stressVal = document.getElementById('stress').value;
    var stress2Val = document.getElementById('stress2').value;
    var ongezondVal = document.getElementById('ongezond').value;
    var ongezond2Val = document.getElementById('ongezond2').value;

    var total = Number(rokenVal) +
                Number(roken2Val) +
                Number(bewegenVal) +
                Number(bewegen2Val) +
                Number(stressVal) +
                Number(stress2Val) +
                Number(ongezondVal) +
                Number(ongezond2Val);


    document.getElementById("resultaatveld").innerHTML = "Overlevingspercentage: " + total + "%";

}; optellen(btntest, 50);

Upvotes: 0

Views: 291

Answers (1)

Steve B
Steve B

Reputation: 212

One clever way to tackle your problem could be with the document.querySelectorAll method. Try this:

var inputs = document.querySelectorAll( '#form-id input' )
var total  = 0

for( var i = 0; i < inputs.length; ++i )
{
    total += ( inputs[ i ].value * 1 ) || 0
}

The "total" variable will now contain the sum of any numerical values within your inputs. You could modify this slightly to also work for select inputs as well.

Upvotes: 1

Related Questions