Вход

Просмотр полной версии : Помогите функция как правильно написать функцию для getElementById


disign
03.06.2016, 11:06
есть код при запуске возвращает NaN что в функции get сделал не так?


<style type="text/css">
#a2:checked ~ #spisok15 { display: none; }
#a3:checked ~ #spisok14 { display: none; }
#a11:checked ~ #spisok15 { display: none; }
#a11:checked ~ #spisok14 { display: none; }
</style>

<script type="text/javascript">
function kak(){

if (document.getElementById('a3').checked)
var flag15 = document.getElementById('spisok15').options[document.getElementById('spisok15').selectedIndex].value;

if (document.getElementById('a2').checked)
var flag15 = document.getElementById('spisok14').options[document.getElementById('spisok14').selectedIndex].value;

if (isNaN(flag15)==true) flag15=0;


function get(c){

if (document.getElementById(c).checked)
var sum;

get.sum= document.getElementById(c).value;


if (isNaN(get(c).sum)==true) get(c).sum=0;


}



}
document.getElementById('ttt').value = parseFloat(flag15)+parseFloat(get('a11').sum);





</script>

<form onsubmit="return false;" onchange="kak()">
<h3>Выберете тип автомобиля</h3>

<br>
<br>
Вело <input type="radio" id="a11" name="raz15"
value="47"/>
Авто с прицепом <input type="radio" id="a2" checked="checked" name="raz15"/> Пикап <input type="radio" id="a3" name="raz15"/>


<br>

<select id="spisok15">
<option value="500">Боковая выгрузка</option>
<option value="0">Задняя выгрузка</option>
</select><select id="spisok14">
<option value="500">Боковая выгрузка</option>
<option value="0">Задняя выгрузка</option>
</select>
<br>Цена <output id="ttt">54</output> $
</form>


<form onsubmit="return false;" onchange="kak()">
<h3>Выберете тип питания</h3>

баллон1 <input type="radio" id="b115" name="vvw"
value="100"/>

баллон2 <input type="radio" id="c115" name="vvw"
value="200"/>

220 V<input type="radio" id="l115" checked="checked" name="vvw"
value="0"/>


</form>
<form onsubmit="return false;" onchange="kak()">
<h3>Выберете тип обшивки</h3>

Дсп <input type="radio" id="b215" name="vww"
value="100"/>
Нержавейка <input type="radio" id="c215" name="vww"
value="200"/>

ДСП+Нержавейка<input type="radio" id="l215" checked="checked" name="vww"
value="0"/>


</form>

disign
03.06.2016, 11:25
что нужно сделать чтобы при запуске выводилась сумма значений радиобаттонов а не NaN

рони
03.06.2016, 12:16
disign,
может html добавите и Пожалуйста, отформатируйте свой код!

Для этого его можно заключить в специальные теги: js/css/html и т.п., например:


... ваш код...



О том, как вставить в сообщение исполняемый javascript и html-код, а также о дополнительных возможностях форматирования - читайте http://javascript.ru/formatting.

disign
03.06.2016, 13:43
добавил

рони
03.06.2016, 14:04
disign,
<style type="text/css">
#a2:checked ~ #spisok15 {
display: none;
}

#a3:checked ~ #spisok14 {
display: none;
}

#a11:checked ~ #spisok15 {
display: none;
}

#a11:checked ~ #spisok14 {
display: none;
}
</style>
<script>
function kak() {
var flag15 = 0;
if (document.getElementById('a3').checked)
flag15 = +document.getElementById('spisok15').value;

if (document.getElementById('a2').checked)
flag15 = +document.getElementById('spisok14').value;

var vvw = +document.querySelector('[name="vvw"]:checked').value
var vww = +document.querySelector('[name="vww"]:checked').value
document.getElementById('ttt').innerHTML = flag15 + vvw + vww;
}
</script>

<form onsubmit="return false;" onchange="kak()">
<h3>Выберете тип автомобиля</h3><br>
<br> Вело <input type="radio" id="a11" name="raz15" value="47"> Авто с прицепом
<input type="radio" id="a2" checked="checked" name="raz15"> Пикап <input type="radio" id="a3" name="raz15"><br>
<select id="spisok15">
<option value="500">
Боковая выгрузка
</option>

<option value="0">
Задняя выгрузка
</option>
</select> <select id="spisok14">
<option value="500">
Боковая выгрузка
</option>

<option value="0">
Задняя выгрузка
</option>
</select><br> Цена <output id="ttt">54</output> $
</form>

<form onsubmit="return false;" onchange="kak()">
<h3>Выберете тип питания</h3>баллон1 <input type="radio" id="b115" name="vvw" value="100"> баллон2 <input type="radio" id="c115" name="vvw" value="200"> 220 V
<input type="radio" id="l115" checked="checked" name="vvw" value="0">
</form>

<form onsubmit="return false;" onchange="kak()">
<h3>Выберете тип обшивки</h3>Дсп <input type="radio" id="b215" name="vww" value="100"> Нержавейка <input type="radio" id="c215" name="vww" value="200"> ДСП+Нержавейка
<input type="radio" id="l215" checked="checked" name="vww" value="0">
</form>

disign
03.06.2016, 14:20
a11 не добавляется при выборе из списков выдаёт занчение NaN

<script>
function kak() {
var flag15 = 0;
if (document.getElementById('a3').checked)
flag15 = +document.getElementById('spisok15').value;

if (document.getElementById('a2').checked)
flag15 = +document.getElementById('spisok14').value;
var raz15 = +document.querySelector('[name="raz15"]:checked').value
var vvw = +document.querySelector('[name="vvw"]:checked').value
var vww = +document.querySelector('[name="vww"]:checked').value
document.getElementById('ttt').innerHTML = flag15 + vvw + vww + raz15;
}
</script>

disign
03.06.2016, 16:49
помогите пожалуйста не могу доделать

рони
03.06.2016, 17:47
disign,
строка 36 где value? поставьте нолики

disign
07.06.2016, 17:03
спасибо