Скрипт почему-то порвал всю разметку сайта, точнее вылез аж за размеры экрана. Привожу отдельно в тегах для скрипта.
<script type="text/javascript">
function checkForm() {
var form=document.forms.form,
user_fname=form.elements.user_fname.value.toString(),
user_tel=form.elements.user_tel.value.toString(),
user_email=form.elements.user_email.value.toString(),
message=form.elements.message.value.toString(),
//регулярное выражение для проверки поля ввода номера телефона, должны быть одни цифры
regTel=/\d{6,11}/,
//регулярное выражение для проверки поля ввода e-mail
regEmail=/^[a-z0-9\._-]+@+[a-z0-9\._-]+\.+[a-z]{2,3}/,
//ищем совпадения в введенной строке и регулярным выражением, если удовлетворяет, то значение, если нет - тогда null
tel=user_tel.match(regTel),
email=user_email.match(regEmail);
form.onchange=function () {
//проверка длины вводимого номера
if (user_tel.length > 5 && user_tel.length < 12) {
tel=user_tel.match(regTel);
return submit();
/* вопрос что возвращается при такой записи - return submit();
** return submit(); это метод отправки формы на указанный в action файл обработки на сервере, а что происходит, когда мы используем
** такую запись в функции проверки изменений в форме?
*/
//если значения в поле ввода пусто или не соответствует регулярке
} else if (user_tel=="" || tel=null) {
checkLable(form.elements.user_tel, 2000); //отправляем запрос с параметрами в функцию checkLable
return false;
}
//проверяем значения в поле ввода email. Если не пусто или соответствует регулярке
if (user_email!="" || email!=null) {
email=user_email.match(regEmail);
return submit(); //тот же вопрос см. выше
} else {
checkLable(form.elements.user_email, 2000); //отправляем запрос с параметрами в функцию checkLable
return false;
}
//функция мигалка. Предполагалось использовать setInterval и помигать бордером при неправильных записях в полях ввода телефона и (или) email
//почему-то не работает!!!!
//что не правильно?
function checkLable(label, deley) {
label.style.backgroundColor = '#f00';
var interval=setInterval(function () {label.style.borderColor = '#f00'}, deley);
clearInterval(interval);
};
}
//планировал отключить кнопку отправки если пустые поля ввода телефона и (или) email
//почему-то не работает!
if (user_tel=="" || user_email=="") {
document.forms.form.elements.next.disabled="disabled";
}
}
</script>