2012-07-30 64 views
0

我的json从我的PDO MySQL查询返回为关联数组,正如我的意图,除了整个字符串被两个封闭的制动器包围。我不知道如何绕过解析的括号。这是一个简短的例子,类似于需要分析的json。关于我可能采取的方法的任何想法,或者我可以如何开始?当整个字符串被括在括号中时如何解析json

{ 
    "A": { 
     "lat": "37.76506200", 
     "lng": "-122.4196940" 
    }, 
    "B": { 
     "lat": "37.75225400", 
     "lng": "-122.4184660" 
    }, 
    "C": { 
     "lat": "37.72198087", 
     "lng": "-122.4474142" 
    } 
} 
+1

这就是您获得的所有完整答复/结果?这是有效的JSON,只是解析它。或者你有'(...)'周围吗?然后它似乎是格式错误的JSONP(缺少函数名称)。将服务器设置为提供适当的JSON或正确的JSONP。 – 2012-07-30 23:05:25

回答

2

随着PHP,采取json_decode考虑:

$array = json_decode($string, true); // where $string is your returned value 
echo $array['C']['lng']; // will print -122.4474142 

随着jQuery的你可以做到这一点:

var res = $.parseJSON(string); 
console.log(res.C.lng); // returns -122.4474142 

最后又用香草的javascript(如果支持JSON)

var res = JSON.parse(string); 
console.log(res.C.lng); 
+0

感谢您的快速回复。然而,我忽略了提及,我试图用jQuery解析它,但是对jQuery来说是新的。我尝试了eval()和$ .getJSON,但似乎无法获取lat或lng元素。最终,我想能够提取父节点。 – 2012-07-30 23:45:46

+0

@BobMac好吧,我添加了jQuery/JavaScript的其他可能性 – 2012-07-31 07:52:40