У меня есть одна проблема. Системы отлично работают, когда я выбираю флажки, общее значение изменяется, но как только я изменяю ввод текста, он изменяется на 0. Мне нужно исключить это текстовое поле из изменения значения.Выберите только флажок в поле getElementsByTagName, исключить ввод текстового поля
вот HTML:
<input type="checkbox" id="15000"/>$15000<br/>
<input type="checkbox" id="9400"/>$9400<br/>
<label>Quantity</label><input class="text" type="text" maxlength="3" size="2" value="1" name="qty"></input>
<div id="total">$5000</div>
Вот JavaScript:
var input = document.getElementsByTagName("input");
var total = document.getElementById("total");
var prev;
for(i=0;i<input.length;i++){
input[i].onchange = function(){
if(this.checked){
$("#total").fadeOut(300);
$("#total").fadeIn(300);
prev=parseFloat(total.innerHTML.replace(/[^0-9\,]+/g,"")) + parseFloat(this.id);
total.innerHTML = "$ " + prev.formatMoney(0, ',', '.');
}else{
$("#total").fadeOut(300);
$("#total").fadeIn(300);
prev=parseFloat(total.innerHTML.replace(/[^0-9\,]+/g,"")) - parseFloat(this.id);
total.innerHTML = "$ " + prev.formatMoney(0, ',', '.');
}
}
}
Вот скрипка: http://jsfiddle.net/M7My9/1/
я добавил, если (this.type! = 'Текст') в верхней части OnChange, спасибо дружище! :) –