Прошу помочь с проверкой формы ввода
Привет всем.
Прошу помочь с проверкой формы ввода данных. Есть function c повторяющимися условиями, function checkform(form) if (form.username.value == "") { alert("<?=USERNAME_ERROR?>"); return false; } if (form.pass.value == "") { alert("<?=PASSWORD_ERROR_1?>"); return false; } if (form.rpass.value == "") { alert("<?=PASSWORD_ERROR_2?>"); return false; } и т.д.Проблема заключается в том что полей ввода много и на каждое поле написано отдельное условие,это занимает много места.Переписал вот так - function checkform(f) { var errMSG = ""; for (var i = 0; i<f.elements.length; i++) if (null!=f.elements[i].getAttribute("required")) if (isEmpty(f.elements[i].value)) // пустой errMSG += " " + f.elements[i].name + "\n"; if ("" != errMSG) { alert("Не заполнены обязательные поля:\n" + errMSG); return false; } } function isEmpty(str) { for (var i = 0; i < str.length; i++) if (" " != str.charAt(i)) return false; return true; } в данном случае выводится errMSG со значением name оператора input. Как заменить значение , f.elements[i].name при выводе alert нужным значением с array <?$error_form[i]?> ? Заранее благодарю за помощь. |
создать сначала объект этих сообщения на клиентской стороне. Ключами этого объекта будут имена элементов, значениями ключей - элементы из php-массива.
И дальше в функции проверки использовать ссылку на этот объект по ключу (имени). |
Цитата:
Две страницы кода,превратились в 20 строк.Потихоньку схожу с ума от изначального кода -но это уже для темы "как НЕНАДО писать код"... ds[.code] -thanks за помощь. |
Часовой пояс GMT +3, время: 13:44. |