jQuery - 从ajax响应访问多维数组

时间:2014-02-19 11:05:27

标签: php jquery ajax arrays json

我正在使用ajax发送一些数据,作为响应,我得到了多维数组。

        $.ajax({
            type: "POST",
            url: "/slideshow/list.php",
            data: imageId,
            success: function(data){
                imagesList = data;
                console.log(imagesList);
                curentImage = imagesList[0];
            }
        });

回复,data看起来像这样。这是我console.log(imagesList)所得到的: 我使用的是php,响应的提供方式如下<?php echo json_encode($data) ?>

[
   [1,487124,"<img src=\"http:\/\/example.com\/images\/1\/487124.jpg\" \/>","http:\/\/example.com\/photos\/salle-a-manger---mineral\/649518","Title 1"],
   [2,732924,"<img src=\"http:\/\/example.com\/images\/1\/732924.jpg\"\/>","http:\/\/example.com\/photos\/salle-a-manger---","Title 2"],
   [3,341649,"<img src=\"http:\/\/example.com\/images\/2\/341649.jpg\"\/>","http:\/\/example.com\/photos\/salle-a-manger---","Title 3"]
]

如果我尝试使用imagesList[0]访问第一个数组,则只显示[

如何访问第一个或第二个数组或其中的值?

2 个答案:

答案 0 :(得分:1)

在ajax请求中指定dataType

 $.ajax({
            type: "POST",
            url: "/slideshow/list.php",
            data: imageId,
            dataType:"json",
            success: function(data){
                 $.each(data,function(key,value){
                       console.log('key:'+key+", value:"+value);
                       //do your stuff 
                 });
            }
        });

答案 1 :(得分:0)

使用此

var obj = $.parseJSON(data);