捕获$ ajax json类型的帖子数据

时间:2014-09-19 08:46:53

标签: javascript jquery ajax

var ajaxData = {1: a, 2: b, 3: c, 4: d};
    $.ajax({
        type: "POST",
        data : ajaxData,
        etc
        etc

如果我在$ ajax中使用dataType: 'json',我怎样才能在我的php中捕获数据?如果不是我可以使用$ _POST ['1']等但我打算使用jason,因为我必须做$_POST['2']以及更多..

3 个答案:

答案 0 :(得分:0)

您将在名为data的请求中有一个php参数,该参数将被解析为Json,然后您只需要应用:

$data = json_decode($_POST[1]);

答案 1 :(得分:0)

我和

一起去
$.ajax(
    ...
    data: {data: JSON.stringify({1: a, 2: b, 3: c, 4: d};)}
)

然后在服务器端我使用json_decode函数来获取数据

答案 2 :(得分:0)

dataType:json 是ajax调用的返回数据类型

数据是您的php文件/ servlet期望的参数。传递json参见下面的例子,它是json和普通参数的混合

var params = {a:1, 
              b:2, 
              myJSON: JSON.stringify({data1:1, data2:2, data3:3})}
    jQuery.ajax({
                    type: "POST",
                    url: "some/url/of/php/file",
                    data: params,
                    dataType: "json",
                    success: function(response){
                        // this should catch what ever is returned by your php file
                        alert(response)
                    },
                    error: function(msg) {
                        alert('error');
                    }
                });

在你的php文件中你可以访问传递的数据就像这个$ _POST [' a'],$ _POST [' b'],$ _POST [' myJSON']

dataType是php文件的返回类型,而不是发送到php文件的参数。

请参阅此处了解更多信息 http://api.jquery.com/jquery.ajax/