[英]Submit form to php using jquery
我有一个联系表单,提交给具有以下内容的php页面:
<?php
$to = 'emailtosendto';
$subject = 'New message from contact form';
$name = $_POST['fullname'];
$mail = $_POST['email'];
$company = $_POST['company'];
$phone = $_POST['phone'];
$comment = $_POST['comment'];
$message = $_POST['message'];
$body = 'Mr/Mrs '.$name.' wishes to contact us.
He\'s from a company called '.$company.'.
You can email him back at '.$mail.', or call him on '.$phone.'.
He was sneaky and found us through '.$comment.'.
He would like to say,
'.$message.'';
ini_set('sendmail_from', '$mail');
mail($to, $subject, $body);
header('location:./?sent');
?>
现在,我已将表单更改为一个很好的实时验证的jQuery表单,您可以在下面看到它的小提琴。
http://jsfiddle.net/swift29/6UC7m/
我正在苦苦思索如何更改任何代码以仍然执行相同的功能,但是要使其弹出,以显示弹出窗口,确认消息已使用jQuery发送,然后淡出并已重置表格
在此先感谢,Swift
无需提交,您可以使用AJAX。 这样,您可以在完成后获得一个弹出窗口。
例:
$.ajax(
url: "urlofscript.php",
data: {
fullname: variableContainingFullname, // i.e. var variableContainingFullname = $("#fullname").var();
email: variableContainingEmail,
// etc, all the php variables in POST
},
type: "POST",
success: function(result)
{
alert("DONE");
}
您正在寻找jQuery的ajax()函数。
AJAX将通过Javascript发送POST查询。 这意味着您不必刷新页面,它会自动发送,并且脚本(mailer.php)将在新实例中调用(而不是用户当前正在使用的浏览器窗口)-也称为“异步”或“后台”,即不会打断用户的操作(简而言之)。
AJAX很容易引起您的注意,基本上就像javascript自己发送表单一样,而不是由用户自己发送。
在ajax()
jquery函数中,有一些回调函数。
您想要的一个称为success:
它看起来像这样:
success: function(data){ alert("Your message has been sent!"); }
当php脚本运行并且javascript回调时,这将显示警报。
高度
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.