После прохождения теоретической части пришло письмо об окончании теоретической части курса, будет ли практическая часть? |
Проверка данных в форме
Концепция
Наш последний сценарий JavaScript не из легких, можете в этом не сомневаться.
Снова придется вернуться к формам. В сегодняшнем примере JavaScript применяется для проверки данных, которые ввел пользователь. Нужно будет ввести в форму свое имя и номер телефона из 7 или 9 знаков (ххххххх или ххх-хх-хх). Необходимо также проверить, что первые 3 символа являются цифрами. Это немного сложнее, чем все остальное, но с этим необходимо разобраться. Проверка данных часто является важной задачей для программистов.
Этот пример возвращает нас к свойству length (длина) и показывает в действии два новых метода: indexOf(), charAt(). Сам сценарий будет длиннее, чем обычно.
Сценарий
<HTML> <HEAD> <SCRIPT type="text/javascript"> function validfn(fnm) { fnlen=fnm.length if (fnlen == 0) {alert("Вы должны ввести свое имя") document.dataentry.fn.focus()} } function validphone(phone) { len=phone.length digits="0123456789" if(len != 7 && len != 9) {alert("Неверное количество знаков в номере") document.dataentry.phone.focus()} for(i=0; i<3; i++) {if (digits.indexOf(phone.charAt(i))<0) {alert("Это должны быть цифры") document.dataentry.phone.focus() break} } } </SCRIPT> </HEAD> <BODY> <FORM NAME="dataentry"> <h2>Подтверждение данных</h2> Введите свое имя:<br> <INPUT TYPE="text" NAME="fn" onBlur="validfn(fn.value)"> <SCRIPT LANGUAGE="JavaScript"> document.dataentry.fn.focus() </SCRIPT> Введите номер телефона (ххх-хх-хх):<br> <INPUT TYPE="text" NAME="phone" SIZE=10 > <INPUT TYPE="button" VALUE="Отправить" onClick="validphone(phone.value)"> </BODY> </HTML>
Результат работы сценария
На странице выводятся два поля ввода с просьбой ввести свое имя и номер телефона. В случае недопустимого ввода выдается сообщение об ошибке.