无法使用返回的JSON

时间:2011-08-24 19:11:20

标签: php javascript jquery json

我在PHP中有一些简单的代码查询,抓取结果数组,然后回应它,以便我可以在javascript中选择它:

echo json_encode($emailQuery->result);

( - >结果部分是表达式引擎;它返回结果集的数组)

我接收代码的javascript如下:

$.post("/dev/onboardingEmailsSubmit", loadInfo, function(data) {
    console.log(data);
});

当我输出数据时,它会按照我的预期输出整个字符串,即。 {[varname:“value”等]}。但是数据['varName'],它是未定义的。 data.varName也是未定义的。 data [0]是JSON字符串的第一个字符,让我相信javascript完全不使用它作为对象。 data [1]是第二个字符等。

有谁知道这里发生了什么?我需要处理一系列数据。

2 个答案:

答案 0 :(得分:6)

听起来你还没有解析过JSON。浏览器或jQuery应该如何知道您获得的响应是​​JSON? (另见@ Marc的评论)

您可以将'json'作为第四个参数传递给$.post [docs],让jQuery为您解析响应。

答案 1 :(得分:0)

$.post("/dev/onboardingEmailsSubmit", loadInfo, function(data) {
    console.log(data);
}, 'json');

如果将'json'作为第4个参数传递给$.post,jQuery将解析JSON。