我想使用带有ajax调用和PHP的Jquery构建一个简单的联系表单。 但它不起作用,我不明白为什么。你可以认为没有id或类名的错误。
我的Javascript
.search-menu-list input{
padding: 0 4px 0 4px; /*Remove padding */
padding:0;
}
我的PHP
jQuery('#contacter').click(function () {
var postdata = $('.contact-form form').serialize();
$.ajax({
type: 'POST',
url: 'contact.php',
data: postdata,
success: function () {
$('.contact-form form').fadeOut('fast', function () {
$('.contact-form').append('<p>Thanks for contacting us! We will get back to you very soon.</p>');
});
}
});
});
我的网站刷新,没有发送邮件。我已经使用简单的邮件()测试了我的服务器,它运行正常:服务器端没问题。
答案 0 :(得分:0)
在我看来,问题是在提交表单时发生回发。当您在按钮(假设)上使用HttpContext.Current
事件时,其默认行为是提交表单并导致回发。
当您使用ajax向后端提交值时,您需要使用click
来停止表单提交/默认行为。
您必须使用event.preventDefault()
停止活动:
event.preventDefault()
如果您正在使用 jQuery('#contacter').click(function (e) { // <-----pass e for event here
e.preventDefault(); // and stop it here
元素,那么最好再使用form
事件:
submit