Задать вопрос

Как реализовать стирание данных формы заявки после отправки?

Есть форма заявки на php, после отправки данных появляется модальное окно "Спасибо". Проблема в том, что данные в форме после отправки не исчезают. Как реализовать?
Форма:
<div id="zayavka">
			 <form id="form" method="post" action="send.php" >			
            <input id="name" type="text" name="name" value size="40" placeholder="Имя">                        
			<input id="phone" type="text" name="phone" value size="40" placeholder="Телефон">
            <input id="mail" type="text" name="email" value size="40" placeholder="Email">
            <textarea id="message" type="text" name="message" class="message" value size="40" placeholder="Введите сообщение"></textarea>
            <input type="submit" name="send" class="send" value="ОТПРАВИТЬ">
            
            </form>
		</div>

Сама заявка:
<?
$mailto  = 'blabla@microsoft.com';
$title = Bla Bla';
$mailFrom = "noreply".$site_address;
$mess = '';
$error = 0;
$headers = "MIME-Version: 1.0\n";
$headers .= "Content-type: text/html; charset=utf-8\n";
$headers .= "Content-Transfer-Encoding: quoted-printable\n";
$headers .= "From: $mailFrom\n";

if ( isset($_POST["name"]) || $_POST["name"]!='' ) { 
    $mess .= 'Имя клиента: '.$_POST["name"].' <br>';
} else {
	$error = 1;
}
if ( isset($_POST["phone"]) || $_POST["phone"]!='' ) { 
    $mess .= 'Телефон: '.$_POST["phone"].' <br>';
} else {
	$error = 1;
}
if ( isset($_POST["email"]) || $_POST["email"]!='' ) { 
    $mess .= 'email: '.$_POST["email"].' <br>';
} else {
	$error = 1;
}
if ( isset($_POST["message"]) || $_POST["message"]!='' ) { 
    $mess .= 'Сообщение: '.$_POST["message"].' <br>';
} else {
	$error = 1;
}


if( $error != 1 ){
mail($mailto, $title, $mess, $headers); 
} else{
echo 'Включите поддержку JavaScript (скриптов) в браузере. <br />Вернитесь и заполните все поля!';
}
?>


Скрипт валидации и отправки:
<script type="text/javascript">
	$(document).ready( function() {
   		
	// Отправка формы
	$("form").each(function(){
		$(this).validate({
			rules: {
				phone: {
					required: true,
				},
				name: {
					required: true,
				},
				email: {
					required: true,
				}
			},
			submitHandler: function(form, event){
				event = event || window.event;
				$(form).ajaxSubmit({
	   				error: function(){
	   					alert("Произошла ошибка при отправке данных на сервер");
	   				},
	   				success: function(responseText, statusText, xhr){
							// Место для ЦЕЛИ - форма отправлено, окно Спасибо						
							$('.popup_thank_you').centered_popup();
							$('.overlay').fadeIn();
							$('.popup_thank_you').fadeIn();
							setTimeout(function(){
								$('.popup_thank_you').fadeOut(500);
								$('.overlay').fadeOut(500);
							},2000)
	   			}
	   		});
				return false;
	   	}
		});
	});
	//
});
	
// Центрируем элемент
$.fn.centered_popup = function() {
		this.css('position', 'absolute');
		this.css('top', ($(window).height() - this.height()) / 2 + $(window).scrollTop() + 'px');
		this.css('left', ($(window).width() - this.width()) / 2 + $(window).scrollLeft() + 'px');
	  } 

</script>
  • Вопрос задан
  • 3104 просмотра
Подписаться 6 Оценить 2 комментария
Решения вопроса 2
@GIGIP
...
success: function(responseText, statusText, xhr){
$("#zayavka [type='text']").val('');
...
я дилетант)
Ответ написан
kirillplatonov
@kirillplatonov
Ruby on Rails developer
Используйте reset после отправки формы
www.javascript-coder.com/javascript-form/javascrip...
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы