|
|
|
| Есть задача:
Выводиться список элементов. Все элементы имеют разный ID список может содержать от 3 до 150 к примеру элементов в зависимости от условий.
Нужно посчитать сумму всех элементов по событию chekbox (checked).
Вот мой вариант:
Если я кликаю на чекбоксы по порядку то счиается сумма нормально. Но если это сделать быстро и много раз на 1 и тот же чекбокс то результат неожиданный или в минусы уходит сумма или в плюсы.
<input type=checkbox name=part[".$parts["id"]."] id=checkbox".$parts["id"]." onclick=\"sum_total(".$parts["id"].")\"><b>".$parts["name"]."</b><br>
<SCRIPT LANGUAGE="JavaScript">
<!--
function sum_total(s) {
var sum_total=0;
fsum_el = document.getElementById("ftotal");
rsum_el = document.getElementById("rtotal");
checkbox_el = document.getElementById("checkbox"+s);
p_costfeak = document.getElementById("p_costfeak"+s);
p_costreal = document.getElementById("p_costreal"+s);
if (checkbox_el.checked) {
fsum_el.value = Number(fsum_el.value) + Number(p_costfeak.value);
rsum_el.value = Number(rsum_el.value) + Number(p_costreal.value);
} else {
fsum_el.value = Number(fsum_el.value) - Number(p_costfeak.value);
rsum_el.value = Number(rsum_el.value) - Number(p_costreal.value);
}
}
//-->
</SCRIPT>
|
Подскажите где грабли.
Заранее огромное сенькс. | |
|
|
|
|
|
|
|
для: cjgun
(15.12.2006 в 02:34)
| | А вы подсчитывайте сумму не по клику на чекбоксе, а по клику, например, на отдельной кнопке. | |
|
|
|
|
|
|
|
для: coloboc66
(15.12.2006 в 12:16)
| | В том то и дело что хотел чтоб сразу считалось, а не раставил чекбоксы и посчита сумму. | |
|
|
|
|
|
|
|
для: cjgun
(15.12.2006 в 13:10)
| | Задержка нужна. Чекбоксы - один из случаев, где она нужна. | |
|
|
|