идентифицировать select в форме
Есть form с произвольным числом select и одинаковыми значениями input
Мне надо если хотя бы в 1 одном select'e значение input value = 0 не субмитнуть форму. <form> <select class="class"> <option value="0">0</option> <option value="1">1</option> <option value="2">2</option> </select> <select class="class"> <option value="0">0</option> <option value="1">1</option> <option value="2">2</option> </select> и так произвольное число select <input type="submit"> </form> если хотя бы в 1 select value=0 форму не субмитнуть для 1 делал так:
function test ()
{
var txt = document.getElementById('').value;
if(txt == '0')
{
alert('test');
return false;
}
return true;
}
Но если много select'ов как сделать? |
Цитата:
document.getElementsByTagName('select');
Далее в цикле... |
<form onsubmit="return test ();">
<select class="class">
<option value="0">0</option>
<option value="1">1</option>
<option value="2">2</option>
</select>
<select class="class">
<option value="0">0</option>
<option value="1">1</option>
<option value="2">2</option>
</select>
<input type="submit">
</form>
<script>
function test ()
{
var txt = getElementsByTagName('select.class');
тут надо как то добавить цикл, но что то мозги не варят как
if(txt == '0')
{
alert('test');
return false;
}
return true;
}
</script>
|
djonA,
Цитата:
|
Цитата:
|
<form onsubmit="return test ();">
<select class="class">
<option value="0">0</option>
<option value="1">1</option>
<option value="2">2</option>
</select>
<select class="class">
<option value="0">0</option>
<option value="1">1</option>
<option value="2">2</option>
</select>
<input type="submit">
</form>
<script>
function test ()
{
for (var txt1 = document.querySelectorAll("select.class"), c = 0; o < a.length; o++);
тут вроде все ок а дальше не получается
o.addEventListener("change", function (d) {
return function () {
txt1[d].value = this.value
}
}(o), !1);
и как условие написать тоже не получается
if(txt1 == '0')
{
alert('test');
return false;
}
return true;
}
</script>
|
djonA,
<!DOCTYPE HTML>
<html>
<head>
<title>Untitled</title>
<meta charset="utf-8">
<script>
function test() {
for (var b = document.querySelectorAll("select.class"), a = 0; a < b.length; a++)
if ("0" == b[a].value) return false;
return true
};
</script>
</head>
<body>
<form onsubmit="return test();">
<select class="class">
<option value="0">0</option>
<option value="1">1</option>
<option value="2">2</option>
</select>
<select class="class">
<option value="0">0</option>
<option value="1">1</option>
<option value="2">2</option>
</select>
<input type="submit">
</form>
</body>
</html>
|
Меня опередили), но я тоже набросал на скорую руку.
<script type="text/javascript">
function check(cls, num) {
var items = document.getElementsByClassName(cls);
for (var i = 0; i < items.length; i+=1){
if (+items[i][items[i].options.selectedIndex].value === num) {
return false;
}
}
return true;
}
</script>
<form>
<select class="sel">
<option value="0">0</option>
<option value="1">1</option>
<option value="2">2</option>
</select>
<select class="sel">
<option value="0">0</option>
<option value="1">1</option>
<option value="2">2</option>
</select>
<input type="submit" onClick="return check('sel', 0)">
</form>
|
Супер огромное спасибо пошел дальше грызть гранит науки
|
Цитата:
|
| Часовой пояс GMT +3, время: 09:39. |