У меня проблема при отправке контактной формы через Ajax в PHP-скрипт. Ранее я использовал функцию jQuery / Ajax, а также сценарий контакта, однако в этом случае процесс выполняется до запроса ajax, а затем возвращает ошибку: пустая строка.
$(document).ready(function(){
jQuery("#sendmail").click(function(){
var name = $("#name").val();
var phone = $("#phone").val();
var email = $("#email").val();
var text = $("#message").val();
//var datastr ='name=' + name + '&mail=' + mail + '&subject=' + subject + '&text=' + text;
var datastr ='name=' + name + '&phone=' + phone + '&email=' + email + '&text=' + text;
$("#form-div").css("float", "left");
$("#form-div").html("<p>Thank you for contacting Stillframe Photography.</p><p>Please wait for just a few moments while your enquiry is being sent.</p>");
$("#form-div").fadeIn("slow");
alert(datastr);
jQuery.ajax({
type: "POST",
url: "contact.script.php",
data: datastr,
success: function(html){
$("#response").fadeIn("slow");
$("#response").html(html);
//setTimeout('$("#response").fadeOut("slow")',2000);
}
,error: function (XMLHttpRequest, textStatus, errorThrown) {
$("#response").html('there was an error');
console.log('error thrown');
console.log(errorThrown);
}
});
});
});
Вы можете увидеть страницу в действии на http://www.stillframe.com.au/test.php, и вы можете увидеть форму без носителя страницы по той же ссылке выше, но test2.php
Я также добавил сценарий без какого-либо другого jQuery к тому же URL-адресу, кроме test3.php, который публикует напрямую в контактный PHP-сценарий, чтобы подтвердить, что в этом сценарии нет ошибок.
решено: убран базовый тег href из головы, и скрипт теперь работает нормально.