通过ajax发送json - 对象 - 对象

时间:2014-06-15 13:59:29

标签: javascript php jquery ajax json

我遇到了AJAX发送json的问题。

var data = [{"name": "Will", "surname": "Smith", "age": "40"},{"name": "Willow", "surname": "Smith", "age": "15"}];

$.ajax({
    type: "POST",
    url: "ajax.php",
    dataType: "json",
    data: data,
    success: function(response)
    {
        alert(response);
    }
});

ajax.php

<?php
     echo json_encode($_POST);
?>

ajax警报响应为[object Object]

如何在php端获取数组?

1 个答案:

答案 0 :(得分:1)

您必须按data方法将string转换为JSON.stringify并将其放入对象中。不知怎的,这样:

$.ajax({
    type: "POST",
    url: "ajax.php",
    dataType: "json",
    data: {"data": JSON.stringify(data)},
    success: function(response)
    {
        alert(response);
    }
});

然后在服务器端,您可以通过$_POST['data']访问传递的数据:

echo json_decode($_POST['data']);