AJAX调用响应没有显示任何内容

时间:2016-01-05 11:15:29

标签: php ajax

我有这个输入字段。

<input type="email" name="email"  required/>

点击提交按钮后,它会进入:

$(".store_email").click(function() 
{
    var ajax_url_store_email = "store_email.php";
    var value= document.getElementsByName('email')[0].value;


    $.post(ajax_url_store_email, {act:"Subscribe", value:value}, function(e){
      console.log(e);

    });
});

电话会发送到:

$email=$_POST["value"];
 $verify= $link->query(" INSERT INTO `Subscribers_email`(`email`) VALUES ('$email') ");
        if($verify==true)
        {
            return json_encode( "Success!");
        }
        else
        {
         return json_encode("Something went wrong!");
        }

一切都很好,但这个电话没有回复任何东西。我的意思是console.log(e);没有打印,可能是什么原因?

4 个答案:

答案 0 :(得分:1)

要返回对ajax请求的回复,您必须echo而不是return

if($verify==true){
    echo json_encode( "Success!");
}
else{
    echo json_encode("Something went wrong!");
}

答案 1 :(得分:1)

尝试回显并退出而不是返回

$verify= $link->query(" INSERT INTO `Subscribers_email`(`email`) VALUES ('$email') ");
        if($verify==true)
        {
            echo json_encode( "Success!");
        }
        else
        {
         echo json_encode("Something went wrong!");
        }
         exit;

答案 2 :(得分:1)

您必须使用PHP printecho函数而不是return。

答案 3 :(得分:1)

加上其他答案你必须在$ .post函数中设置json dataType,如果你想将值返回为json:

$.post(ajax_url_store_email, {act:"Subscribe", value:value}, function(e){
  console.log(e);
},'json');