Показать сообщение отдельно
  #6 (permalink)  
Старый 18.03.2014, 22:41
Интересующийся
Отправить личное сообщение для kefalia Посмотреть профиль Найти все сообщения от kefalia
 
Регистрация: 16.12.2013
Сообщений: 21

Доброй ночи
Пичаль заключается вот еще в чем:
<form onsubmit="return checkForm(this)" action="index.php" method="post">
<div id="contact-form">
        <div>
            <label for="fio" class="label">Ваше имя</label>
            <input type="text" value="" name="fio" id="fio" class="w-460" />
		<div id='err_fio' class='error'></div>
        </div>
        <div>
            <label for="phone" class="label">Телефон</label>
            <input type="text" value="" name="phone" id="phone" class="w-460" />
            <div id='err_phone' class='error'></div>
        </div>
        <div>
            <label for="email" class="label">E-mail</label>
            <input type="text" value="" name="email" id="email" placeholder="Введите, чтобы получить копию заказа" class="w-460" />
        </div>
	<div id='err_email' class='error' style="color: red;"></div>
      
            <input id="submit-form" type="submit" value="Оформить заказ" />
</div>
</form>

<script type="text/javascript">
function checkForm(form){
	 if (document.getElementById('email').value==""){
	document.getElementById('err_email').innerHTML='Заполните данные о заказчике';
		return false;
	}
	else {
	document.getElementById('err_email').innerHTML="";
	};

	if (document.getElementById('fio').value==""){
	document.getElementById('err_fio').innerHTML='Заполните данные о заказчике';
		return false;
	}
	else {
	document.getElementById('err_fio').innerHTML="";
	};

	if (document.getElementById('phone').value==""){
	document.getElementById('err_phone').innerHTML='Заполните данные о заказчике';
		return false;
	}
	else {
	document.getElementById('err_phone').innerHTML="";
	};

	
	return true;
};
</script>


Подозреваю, что я что-то намудрила с условиями.
Значение value передается только из поля с id="email", из остальных полей не передается ничего, даже если они заполнены.
Причем, если повесить на каждый input событие onblur="alert(this.value)", то во всплывающем окне появляется значение, введенное в поле, а в функцию - не передается.
То есть, сначала проверяется email (так было сделано с целью эксперимента), затем проверяется имя и, даже если поле заполнено, при повторном нажатии на submit, остается надпись "Заполните данные о заказчике".
Ответить с цитированием