Вчера появилась задача: проверить перед отправкой форму, на предмет заполненности полей формы. Задача, в принципе, не сложная, если бы поля формы не генерировались динамически, и не имели имена типа field[].
Для такой проверки нам нужно создать цикл, перебирающий все поля с определенными именами, и проверяющий их значение – пусто / не пусто.
Сам не смог справиться, помогли на хэшкод, решение ниже. Спасибо ling
<script> function testForm(x){ var els = x.getElementsByTagName('input'); for(var i = 0, il = els.length; i < il; ++i){ if(els[i].name == 'field[]'){ if(els[i].value == ''){ alert('Заполните поле!'); els[i].focus() return false; } } } return true; } </script> <form onsubmit="return testForm(this);"> <input name="field[]"> <input name="field[]"> <input name="field[]"> <input type="submit"> </form>