Reputation: 1
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
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