Зависимость значения одного поля от суммы двух других полей
Здравствуйте! Вопрос. Имеется форма с полями выпадающих списков. Вот код:
<span class="krit">Внутренние камеры:</span>
<p style="display: none;" rel="Внутренние камеры"></p>
<select name="op1" id="">
<option style="color: #cccccc; display: none;" class="" value="0"></option>
<option value="t0">0</option>
<option value="t1">1</option>
<option value="t2">2</option>
<option value="t3">3</option>
<option value="t4">4</option>
<option value="t4">5</option>
<option value="t4">6</option>
<option value="t4">7</option>
<option value="t4">8</option>
<option value="t4">9</option>
<option value="t4">10</option>
<option value="t4">11</option>
<option value="t4">12</option>
<option value="t4">13</option>
<option value="t4">14</option>
<option value="t4">15</option>
</select>
<span class="krit">Уличные камеры:</span>
<p style="display: none;" rel="Уличные камеры"></p>
<select name="op4" id="">
<option style="color: #cccccc; display: none;" class="" value="0"></option>
<option value="t0">0</option>
<option value="t1">1</option>
<option value="t2">2</option>
<option value="t3">3</option>
<option value="t4">4</option>
<option value="t4">5</option>
<option value="t4">6</option>
<option value="t4">7</option>
<option value="t4">8</option>
<option value="t4">9</option>
<option value="t4">10</option>
<option value="t4">11</option>
<option value="t4">12</option>
<option value="t4">13</option>
<option value="t4">14</option>
<option value="t4">15</option>
</select>
<span class="krit">Видеорегистратор(кан.):</span>
<p style="display: none;" rel="Видеорегистратор(кан.)"></p>
<select name="op3">
<option style="color: #cccccc; display: none;" class="" value="0"></option>
<option value="t1">4</option>
<option value="t2">8</option>
<option value="t3">16</option>
<option value="t4">32</option>
</select>
Как сделать, чтобы при выборе допустим 4 камер внутренних и 4 уличных в поле ВИДЕОРЕГИСТРАТОР скрывалась цифра 4 и подставлялась цифра 8, т.е. необходимо суммировать количество камер и округлять до ближайшего большего (если сумма камер 9, то минимальное значение в поле видеорегистратор должно быть 16). Спасибо! |
Нужно:
1. Найти событие которое происходит при выборе камер 2. Написать к этому событию обработчик, в котором присваивать нужное значение полю видеорегистратор На каком этапе проблемы?) |
Цитата:
|
kos0760,
:cray:
<!DOCTYPE HTML>
<html>
<head>
<title>Untitled</title>
<meta charset="utf-8">
</head>
<body>
<select name="" id="">
<option value="0">0</option>
<option value="1">1</option>
<option value="2">2</option>
<option value="3">3</option>
<option value="4">4</option>
<option value="5">5</option>
<option value="6">6</option>
<option value="7">7</option>
<option value="8">8</option>
<option value="9">9</option>
<option value="10">10</option>
<option value="11">11</option>
<option value="12">12</option>
<option value="13">13</option>
<option value="14">14</option>
<option value="15">15</option>
</select>
<select name="" id="">
<option value="0">0</option>
<option value="1">1</option>
<option value="2">2</option>
<option value="3">3</option>
<option value="4">4</option>
<option value="5">5</option>
<option value="6">6</option>
<option value="7">7</option>
<option value="8">8</option>
<option value="9">9</option>
<option value="10">10</option>
<option value="11">11</option>
<option value="12">12</option>
<option value="13">13</option>
<option value="14">14</option>
<option value="15">15</option>
</select>
<select name="" id="" size="4" >
<option value="4">4</option>
<option value="8">8</option>
<option value="16">16</option>
<option value="32">32</option>
</select>
<script>
var s = document.querySelectorAll("select"),
o = s[2].querySelectorAll("option");
function foo() {
for (var b = +s[0].value + +s[1].value, a = s[2].options.length = 0; a < o.length; a++)
+ o[a].value >= b && s[2].appendChild(o[a]);
s[2].options[0].selected = !0
}
s[0].onchange = s[1].onchange = foo;
</script>
</body>
</html>
|
| Часовой пояс GMT +3, время: 16:05. |