如何使用Jquery解析以下JSON数据

时间:2012-05-31 12:42:26

标签: javascript jquery json

我是JQuery的新手。我从服务器获得了这个JSON响应,我该如何解析它?

[
    {
        "note": {
            "created_at": "2012-04-28T09:41:37Z",
            "updated_at": "2012-04-28T09:41:37Z",
            "text": "aaaaaaaaaaafdafasd fasfasd dfa sdfasf asdfa fasdfda",
            "lng": 44.5159794497071,
            "id": 7,
            "deleted": false,
            "user_id": 1,
            "note_type": "text",
            "lat": 40.1884140543842
        }
    },
    [ ... more JSON ...]
]

我怎么解析这个?

4 个答案:

答案 0 :(得分:3)

您必须将请求的数据类型设置为“json”,并且数据将在您的成功回调中进行解析。

目前你需要知道的一切都在http://api.jquery.com/jQuery.ajax/

以下是您可以做的一个非常简单的示例:

$.ajax({
    url: url, // the service URL. Must answer proper JSON
    data: {  // the parameters of the request. This should be adapted to your case
        param1: value1,
        param2: value2
    },
    dataType: "json",
    type: "POST",
    success: function(resultData) {
        // here, resultData is your parsed json
    },
    error: function() {
        // handle error here
    }
});

答案 1 :(得分:1)

jQuery.parseJSON

使用此jQuery方法解析JSON对象。

答案 2 :(得分:0)

如果服务器输出实际的JSON(问题中的示例有错误)并且它具有正确的内容类型(application/json而不是PHP默认的text/html)那么您不需要做任何事。

jQuery将为您解析它(并在成功处理程序中向您显示一个JavaScript对象)。

答案 3 :(得分:0)

那是不是 JSON。您发布的内容看起来像一个PHP数组,其中包含括号以尝试将其转换为JSON。

将来使用this site验证您的JSON。

现在,要将您的PHP数组转换为JSON,请使用json_encode()并使用特定标头将其分发到浏览器。

$array = array( 'test' => 'sure' );
header('Content-type: application/json');
print json_encode($array);
exit;

现在,您将拥有可在JavaScript中使用的实际JSON。

$.get(  'yourFile.php',
        function(data){
            console.log(data);
        }
);