@GIRUPC
Веб-программист

Почему не срабатывает аякс запрос?

Как сделать что бы после отправки страница не перезагружалась полностью, а только модальное окно закрывалось. Сейчас после отправки данных из формы просто переходит на http://артпласторенбург.рф/mail.php и просто белая страница. Взял скрип аякс готовый. И по идее там должен выходить алерт с сообщением но он не появляется, не понятно почему
$(document).ready(function() {

	$("#form").submit(function() {
		$.ajax({
			type: "POST",
			url: "mail.php",
			data: $(this).serialize()
		}).done(function() {
			$(this).find("input").val("");
			alert("Спасибо за заявку! Скоро мы с вами свяжемся.");
			$("#form").trigger("reset");
		});
		return false;
	});

	$("#form1").submit(function() {
		$.ajax({
			type: "POST",
			url: "mail.php",
			data: $(this).serialize()
		}).done(function() {
			$(this).find("input").val("");
			alert("Спасибо за заявку! Скоро мы с вами свяжемся.");
			$("#form1").trigger("reset");
		});
		return false;
	});
	
});

вот обработчик php
<?php

$recepient = "yagofarov.vadim@mail.ru";
$sitename = "Артпласторенбург.рф";

$name = trim($_POST["name"]);
$phone = trim($_POST["phone"]);
$email = trim($_POST["email"]);
$message = "Имя: $name \nТелефон: $phone \nEmail: $email";

$pagetitle = "Новая заявка с сайта \"$sitename\"";
mail($recepient, $pagetitle, $message, "Content-type: text/plain; charset=\"utf-8\"\n From: $recepient");
  • Вопрос задан
  • 142 просмотра
Пригласить эксперта
Ответы на вопрос 1
@alexalexes
$("#form")
У вас на странице формы имеют атрибут id="form" или id="form1"?
Нет.
А на что будут вешаться обработчики submit в этом случае? Ни на что.
Решение:
Для отладки JS-кода в любом непонятном месте, пока вы новичок, проверяйте, что вылавливает JQuery селектор:
var form_elem = $("#form"); // тут должны словить DOM-объект формы в JQuery обертке
form_elem.submit(function(.......... // а тут цепляем обработчик.

Чтобы приведенный выше код поставил обработчики submit, на странице должны существовать элементы с такими атрибутами:
<form id="form"></from>
или такой:
<form id="form1"></from>
Атрибуты action и method, конечно, должен быть определены.
Ответ написан
Ваш ответ на вопрос

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

Войти через центр авторизации
Похожие вопросы