Показать сообщение отдельно
  #1 (permalink)  
Старый 25.07.2011, 13:22
Аспирант
Отправить личное сообщение для shkarbatov Посмотреть профиль Найти все сообщения от shkarbatov
 
Регистрация: 25.07.2011
Сообщений: 45

Валидация поля для отправки формы
Помогите пожалуйста разобраться. Есть поле input и есть кнопка.
В поле можно вводить только русские символы, если не русские - то выдается сообщение (это работает), если поле не заполнено и нажимается кнопка отправить выдается ошибка (это тоже работает), если же оно заполнено, то идет отправка формы (и это есть).

Необходимо: сделать проверку уже введенных данных, если они соответствуют шаблону - тогда отправлять, если же нет, то выдавать сообщение.

При проверке поля создаю булевскую переменную, если текст проходит валидацию, тогда - true, иначе - false.

Как получить значение булевской переменной из функции namep(elementValue) в функцию tr ().

Буду очень признателен за вашу помощь.



<form id="form1" action="send_email.php" method="post" enctype="multipart/form-data">

<script>
function namep(elementValue){
var emailPattern = /^[А-Яа-яё]{2,20}$/u;

if (emailPattern.test(elementValue.value)) {
pb.innerHTML = "";
var test = true;
} else {
pb.innerHTML = "Введите имя на русском языке";
var test = false;
}
}
</script>

<p class="type1">
<input name="name_" onkeyup="namep(this)" id="name_"/> Имя
<div id="pb"></div>
</p>

<!-- ------------------------------------------------- -->

<script>
function tr () {
var text=document.getElementById("name_");
if((!text.value)&&(test==false))
{
alert('error');
}
else
{
document.forms["form1"].submit();
}
}
</script>

<p class="type1">
<input type="button" value="Загрузить" onClick="tr();">
</p>

</form>
Ответить с цитированием