有谁知道如何总计这些值的总和。我想将总数乘以1072.我尝试了一点点。但这并没有很好的效果......
所以我想要一个javascript代码,其中将计算标记的4个值的总和。
<html>
<head>
<h2>Inboedelwaardemeter</h2>
<script type="text/javascript">
function sumCheckedRadioButtons() {
var sum = 0;
$('input[type=radio]:checked').each(function(i, el) {
sum += Number($(el).val());
});
return sum;
}
$('#show_sum').on('click', function() {
alert(sumCheckedRadioButtons());
});
</script>
</head>
<body>
<br>
<b> Leeftijd hoofdkostwinner:</b>
<form name="mijnForm1">
<br>
<input type="radio" id="getal1" name="leeftijd"
value="22" checked> 35 jaar en jonger
<br>
<input type="radio" id="getal2" name="leeftijd"
value="29"> 36 t/m 50 jaar
<br>
<input type="radio" id="getal3" name="leeftijd"
value="38"> 51 jaar en ouder
<br>
<br>
<b> Samenstelling huishouden:</b>
<br>
<form name="mijnForm2">
<input type="radio" id="getal4" name="huishouden"
value="22" checked> Alleenstaande
<br>
<input type="radio" id="getal5" name="huishouden"
value="29"> Echtpaar / Samenwonende
<br>
<br>
<b> Netto maandinkomen hoofdkostwinner</b>
<br>
<form name="mijnForm3">
<input type="radio" id="getal6" name="hoofdkostwinner"
value="22" checked> Tot en met €1000,-
<br>
<input type="radio" id="getal7" name="hoofdkostwinner"
value="29"> €1001,- tot en met €2000,-
<br>
<input type="radio" id="getal8" name="hoofdkostwinner"
value="38"> €2001,- tot en met €3000,-
<br>
<input type="radio" id="getal9" name="hoofdkostwinner"
value="38"> €3001,- of hoger
<br>
<br>
<b> Oppervlakte woning</b>
<br>
<form name="mijnForm4">
<input type="radio" id="getal10" name="Oppervlakte"
value="22" checked> tot en met90m²
<br>
<input type="radio" id="getal1" name="Oppervlakte"
value="29"> 91m² tot en met 140m²
<br>
<input type="radio" id="getal12" name="Oppervlakte"
value="38"> 141m² tot en met 190m²
<br>
<input type="radio" id="getal13" name="Oppervlakte"
value="38"> 191m² of meer
<br>
</form>
<input type="button" id="show_sum" value="Show Sum" />
</body>
</html>
答案 0 :(得分:2)
使用jQuery,您只需选择所有选中的单选按钮,并将其数值添加到总和中:
function sumCheckedRadioButtons() {
var sum = 0;
$('input[type=radio]:checked').each(function(i, el) {
sum += Number($(el).val());
});
return sum;
}
这是working jsFiddle(按“结果”窗格底部的“显示总和”按钮。)
答案 1 :(得分:1)
以下是一个vanilla js解决方案:
function checkTotal() {
var a = document.querySelectorAll('input:checked');
var total = 0;
for(var x=0; x < a.length;x++){
total += a[x].value * 1;
}
alert(total);
}
注意:queryselector仅适用于(相对)现代浏览器http://caniuse.com/queryselector