идентифицировать 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, время: 15:04. |