尝试使用php发送邮件时返回parsererror

时间:2013-06-06 23:36:14

标签: php jquery json

我正在尝试使用php从jquery发送电子邮件,我收到了一个parsererror:

的index.html

var myUrl = "http://mysite/mail.php";
$.ajax({
   type: "POST",
   url: myUrl,
   cache: false,
   contentType: "application/json; charset=utf-8",
   data: {  body:"test",
            to:"myemail@gmail.com",
            subject:"Test Results"
         },
   dataType: "json",
   complete: function(transport, data){  
                console.log(data);
                if (transport.status == 200) 
                    alert("Worked.");
                else 
                    alert("Didn't work, " + transport.status); 
            }
   });

mail.php

<?php

$body = $_POST['body'];
$to = $_POST['to'];
$subject = $_POST['subject'];

mail($to, $subject, $body);
?>

当我将console.log(data)放入索引文件时,我在控制台中看到的结果是“parsererror”。有谁知道这是为什么?

1 个答案:

答案 0 :(得分:1)

您指定的dataType是JSON,这意味着Javascript从请求中获取的响应应该是JSON编码的。由于您没有从PHP脚本提供任何数据,因此Javascript会抛出错误。