使用ajax获取php返回值

时间:2016-08-07 05:01:00

标签: javascript php html ajax forms

我有一个从用户那里获取价值并将其存储到数据库的表单。 在提交表单时,它使用ajax调用调用 action.php 文件。

e.preventDefault();

$.ajax({

    type: "POST",
    url: "action.php",
    data: senData,
    dataType: "JSON",

    success: function(data) {

        $("#name").val("");
        $('.msg').fadeIn(500);
        $('.msg').text("" + data.result + "");

    }

});

值存储在数据库中没有任何错误,但我想在 msg div中提交表单后向用户显示通知。

在我的action.php文件中,我添加了JSON Encode语句来返回消息。

$msg = 'Thanks Yo Yo';
echo json_encode(array("result" => $msg));

但是它无法正常工作,即当我提交表单时,它会将数据存储到数据库中,并且网页会自动刷新,而不会在.msg div中显示任何消息。

我做错了什么,有没有更好的方法呢?

1 个答案:

答案 0 :(得分:1)

当JSON返回到您的javascript时,您需要解析它。

// Parse the response to JSON
var res = JSON.Parse(data);
$('.msg').text(res.result);

您的代码应如下所示。

e.preventDefault();

$.ajax({
 type: "POST",
 url: "action.php",
 data: senData,
 dataType: "JSON",

 success: function(data) {
    var res = JSON.Parse(data);
    $("#name").val("");
    $('.msg').fadeIn(500).text(res.result);

 }

});