Php 如何获得;“成功”;使用jqueryajax电子邮件表单

Php 如何获得;“成功”;使用jqueryajax电子邮件表单,php,jquery,html,ajax,Php,Jquery,Html,Ajax,我在一个网站上创建了一个简单的电子邮件表单——使用jQuery库通过AJAX进行处理 我知道表单正在工作,因为我正在接收测试电子邮件,但我需要用户知道他们的电子邮件已发送。目前,成功后没有任何事件发生。它应该将表单(在div#contactform中)替换为一条成功消息。我在这里遗漏了什么 注意:提交表单后,我查看了Safari中的活动,它显示了我的process.php脚本,但上面写着“已取消”。它为什么要这样做,这可能与它为什么没有显示成功信息有关吗 这是我的剧本: HTML 在proces

我在一个网站上创建了一个简单的电子邮件表单——使用jQuery库通过AJAX进行处理

我知道表单正在工作,因为我正在接收测试电子邮件,但我需要用户知道他们的电子邮件已发送。目前,成功后没有任何事件发生。它应该将表单(在div#contactform中)替换为一条成功消息。我在这里遗漏了什么

注意:提交表单后,我查看了Safari中的活动,它显示了我的process.php脚本,但上面写着“已取消”。它为什么要这样做,这可能与它为什么没有显示成功信息有关吗

这是我的剧本:

HTML


在process.php中添加
mail()的
echo

ajax
成功

...
success: function(data) {
    if(data == 1){
        message = "success!";
    }
    else{
        message = "Error";
    }    
    $('#contactform').empty().html(message);
   }

在process.php中添加
mail()的
echo

ajax
成功

...
success: function(data) {
    if(data == 1){
        message = "success!";
    }
    else{
        message = "Error";
    }    
    $('#contactform').empty().html(message);
   }

只有Safari活动窗口中的一个窗口:“…/process.php已取消”。但是这个脚本实际上是有效的,因为我确实收到了电子邮件。表单保留在页面上(在#contactform中),字段值保留。顺便说一句,我试图在成功后提示一个alert(),但它也没有任何效果。谢谢你的帮助!我试过你的最后一个建议,事实上,两个都有效!我记得你经常需要做的不仅仅是在地址栏中按回车键。要刷新.js文件,我还必须重新加载页面(cmd+r)。一旦我这么做了,成功消息就与您最初的建议一致。只有Safari活动窗口中的消息:“…/process.php已取消”。但是这个脚本实际上是有效的,因为我确实收到了电子邮件。表单保留在页面上(在#contactform中),字段值保留。顺便说一句,我试图在成功后提示一个alert(),但它也没有任何效果。谢谢你的帮助!我试过你的最后一个建议,事实上,两个都有效!我记得你经常需要做的不仅仅是在地址栏中按回车键。要刷新.js文件,我还必须重新加载页面(cmd+r)。一旦我这样做了,成功的信息与你最初的建议是一致的。
$name = $_POST['name'];
$email = $_POST['email'];
$msg = $_POST['message'];


$recipient = '[my email]';
$subject = 'Website Test';

$message = '
Name: ' . $name
. ', Email: ' . $email
. ', Message: ' . $msg;


mail($recipient, $subject, $message, $headers);
$res = mail($recipient, $subject, $message, $headers);
echo $res;        //if $res returns 1 that means mail was sent
...
success: function(data) {
    if(data == 1){
        message = "success!";
    }
    else{
        message = "Error";
    }    
    $('#contactform').empty().html(message);
   }