通过Jquery输出JSON编码数组

时间:2012-08-19 23:53:49

标签: javascript jquery arrays json

我在ajax调用中设置了一个json编码数组:

 $var = json_encode($_SESSION['pictures']);

我把这个json编码的数组放在一个名为“array”的var中 当我警告var数组时,我收到以下回调:

  ["http://linktoimage1", "http://linktoimage2"]

现在我想通过jquery调用输出第一个值:

 $('#imgswap').attr('src', array[0]);

当我进行这个jquery调用时,我收到值“[”。如果我将其更改为数组[2],我会收到“h”。所以他给了我一些字符而不是数组的完整值。

我做错了什么?

3 个答案:

答案 0 :(得分:3)

你需要解析json以使其成为一个数组,否则它只是一个字符串

array = $.parseJSON(array);
$('#imgswap').attr('src', array[0]);

如果您将dataType设置为json

,也可以让jQuery.ajax为您解析

答案 1 :(得分:0)

您收到的数据是字符串而不是实际的JSON。您在AJAX通话中使用dataType: text吗?如果是,请省略该行或将其替换为dataType: json

答案 2 :(得分:0)

将您的最后一行更改为:

$('#imgswap').attr('src', JSON.parse(array[0]));

您需要解析您的JSON。如果你不这样做,你有一个字符串,而不是一个数组。