letehaha
@letehaha
Вникаю вo front-end

Что не так с ajax формой?

<form id="contact-form">

<div class="contact-form_input-container">
	<input class="contact-form_input validate[required,minSize[4]]" id="contact-name" type="text" name="first_name">
	<label class="contact-form_label" for="first_name">Имя</label>
</div>

<div class="contact-form_input-container">
	<input class="contact-form_input validate[required, custom[email]]" id="contact-email" type="email" >
	<label class="contact-form_label" for="email">E-mail</label>
</div>

<div class="contact-form_textarea-container">
	<textarea class="contact-form_input validate[required,minSize[20]]" name="text_message" id="contact-text" cols="30" rows="5"></textarea>
	<label class="contact-form_label" for="text_message">Сообщение</label>
</div>


<div class="contact-form_submit-container">
	<input class="contact-form_submit" type="submit" value="Отправить" name="submit" id="send">
</div>

</form>

$('#contact-form').submit(function() {
	$.ajax({
		url: "https://formspree.io/letehaha@gmail.com", 
    method: "POST",
    data: $(this).serialize(),
    dataType: "json"
	}).done(function() {
	   $('#contact-form').trigger("reset");
	});
	return false;
});


Что здесь не так? После отправки в адресной строке выводятся все поля. На другом проекте такой же код работает без проблем.
  • Вопрос задан
  • 147 просмотров
Решения вопроса 1
Palych_tw
@Palych_tw
Типа веб-разработчик
Попробуйте так.
$('#contact-form').on("submit", function(e) {
   e.preventDefault();
  $.ajax({
    url: "https://formspree.io/letehaha@gmail.com", 
    method: "POST",
    data: $(this).serialize(),
    dataType: "json"
  }).done(function() {
     $('#contact-form').trigger("reset");
  });
  return false;
});
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

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

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