使用+=
和一個簡單的三元運算符:
var total = 0;
total += document.getElementById('cb1').checked ? parseInt(document.getElementById('cb1').value, 10) : 0;
total += document.getElementById('cb2').checked ? parseInt(document.getElementById('cb2').value, 10) : 0;
total += document.getElementById('cb3').checked ? parseInt(document.getElementById('cb3').value, 10) : 0;
alert(total);
我應該披露是一樣的:
var total2 = 0;
if (document.getElementById('cb1').checked) total2 += parseInt(document.getElementById('cb1').value, 10);
if (document.getElementById('cb2').checked) total2 += parseInt(document.getElementById('cb2').value, 10);
if (document.getElementById('cb3').checked) total2 += parseInt(document.getElementById('cb3').value, 10);
alert(total2);
例如HTML:
<input id="cb1" type="checkbox" value="341" checked />
<input id="cb2" type="checkbox" value="242" />
<input id="cb3" type="checkbox" value="345" checked />
你問過你的助教嗎? – smcg
代碼會有幫助,但我認爲在這種情況下它不是必需的。如果需要,您可以只使用所選元素的值,如果需要則不使用。 – Duffmaster33
您要求進行代碼審查,沒有任何問題。試試這裏:http://codereview.stackexchange.com/,因爲在這裏我們更多地解決代碼問題。 –