2014-09-23 73 views
0

我有一些json返回数据,我无法访问JSON内的任何数据,我以前使用过这种方法,它的工作原理,但我似乎无法弄清楚什么这里错了。问题阅读json数据返回到jQuery

data [“json”]将打印出json数据,但data [“default”]或data.default不会打印出json数据中的单个信息。

JSON:{ “默认”: “Y”, “mqdefault”: “Y”, “hqdefault”: “Y”, “sddefault”: “Y”, “maxresdefault”: “Y”}

的jQuery是:

$.ajax({ 
     type: "POST", 
     dataType: "json", 
     url: "response.php", 
     data: data, 
     success: function(data) { 
      $(".the-return").html(
       "default: " + data["default"] + "<br />mqdefault: " + data["mqdefault"] + "<br />hqdefault: " + data["hqdefault"] + "<br />JSON: " + data["json"] 
      ); 

      //alert("Form submitted successfully.\nReturned json: " + data["json"]); 
     } 
    }); 
+0

你尝试使用_ $。parseJSON(数据)_,然后_data.default_ ? – 2014-09-23 19:29:12

+0

我们无法帮助您解决这个问题,您必须记录'data'并查看您使用console.log等内容。 – adeneo 2014-09-23 19:29:56

+0

什么是'data.json'?这不会出现在您的示例JSON中。或者JSON是顶级属性,你列出的是嵌套对象? – 2014-09-23 19:29:58

回答

0

嗯,我已经碰到了类似类型的情况下,我是从我的服务器,我能在日志打印响应得到一个JSON数据,但我没能访问它的变量。

后来我发现这是因为在回调成功函数中收到的数据实际上并不是json值。您可能需要检查它是否实际上是json,否则您可以将其解析为json。

也许是你的数据不正确的JSON格式由于您无法访问数据[“默认”]

+0

是的,检查了我编码之前创建的数组到json,这是问题,编码时它不是正确的json格式。感谢您指点我正确的方向 – user3399799 2014-09-23 21:07:03