Вот форма: Код (Text): <form name="id_1"> <input name="id_2"> </form> Как сделать чтобы при нажатии кнопки, скрипт проверил длну id_2, и если длина больше 4 то форма отправляется как надо, а если текст в id_2 короче 4 символов, форма стояла на месте и выскакивало сообщение alert?
Код (Text): <form onsubmit="if ( document.getElementById( <id инпута> ).value.length > 4 ) return true; alert( 'нафик!' ); return false">
проще говоря, Код (Text): <form onsubmit="if (this.id_2.value.length <= 4) { alert( 'нафик!' ); return false }">
Код (Text): <script language="javascript" type="text/javascript"> function check() { if (document.getElementById("id_2").value.length < 4) { alert("Длина введенной строки меньше четырех символов."); } else { return true; } return false; } </script> <form name="id_1"> <input name="id_2"> <input type="submit" onClick="return check();"> </form>
А если у пользователя отключен JS? Проверка на стороне клиента - это защита от блондинок. Они очень боятся вычислительной техники, поэтому аккуратно, по полчаса проверяют, все ли они так ввели, потом нажимают на сабмит... раз десять-пятнадцать, чтобы быть уверенными, что данные отправлены.
Это идиотизм. Alert'ы вообще надо запретить как класс. Существенно лучше выводить сообщение об ошибке на странице рядом с полем с некорректными данными и ошибку эту выделять ярким так, чтобы было понятно, что это именно ошибка. Это позволяет: 1. Избежать лишнего движения и клика по кнопке ок. 2. Анализа текста сообщения и попыток найти на странице место с проблемой. 3. Одинаково работает и на стороне клиента (без перезагрузки) и на стороне сервера (с перезагрузкой). Функциональность дублируется, но в таких случаях этого не избежать.
на самом деле проверка на стороне клиента - это помощь норм.челу, который случайно описАлся в форме.. например, при вводе номера телефона написал 123-45*67..