Сообщение от Anushki
|
он выводет сумму после того как я второе поле заполняю
|
Не правда:
<!DOCTYPE html>
<html lang="ru">
<head>
<meta charset="UTF-8" />
<title>Получение суммы всех value из полей</title>
<script>
function addition(f) {
var v = [].reduce.call(f, function(a, i) {
return a + (i.checked || i.type!='radio' && +i.value ? +i.value : 0)
}, 0)
document.getElementById('result').textContent = v;
}
</script>
</head>
<body>
<form oninput="addition(this.elements)" onchange="addition(this.elements)" autocomplete="off">
<input name="usluga" id="a" type="radio" value="10">Услуга 1<br><br>
<input name="usluga" id="b" type="radio" value="20">Услуга 2<br><br>
<select class="c" id="c">
<option value="" selected disabled>Количество</option>
<option value="1">1 .шт</option>
<option value="2">2 .шт</option>
</select><br><br>
<input name="d" id="d" type="text" value="" placeholder="Укажите размер"><br><br>
</form>
Итого: <i id="result"></i>.рублей<br>
</body>
</html>
Но разве это верно по логике?
PS. Писалось же, что под современные браузеры, то есть поддерживающие событие oninput, можно в форму добавить обработку и иного - onchange="addition(this.elements)".