Jquery 解析JSON Google Place数据时遇到问题

Jquery 解析JSON Google Place数据时遇到问题,jquery,json,google-maps-api-3,Jquery,Json,Google Maps Api 3,我想从谷歌那里得到一个地方的评级。我正在通过placeID执行JSON请求,请求字段名称和评级。在浏览器中查看JSON url时,我会看到以下数据: { "html_attributions" : [], "result" : { "name" : "Coffeetots Play Café", "rating" : 4.7 }, "status" : "OK" } 在javascript/jQuery中将“rating”字段保存为变量或在页面上

我想从谷歌那里得到一个地方的评级。我正在通过placeID执行JSON请求,请求字段名称和评级。在浏览器中查看JSON url时,我会看到以下数据:

{
   "html_attributions" : [],
   "result" : {
      "name" : "Coffeetots Play Café",
      "rating" : 4.7
   },
   "status" : "OK"
}
在javascript/jQuery中将“rating”字段保存为变量或在页面上显示时,我遇到了麻烦。下面是我的代码(删除了我的API密钥),我假设我不需要“each”循环,因为只有一个地方,但我还没有找到其他方法

<div id="results"></div>

<script type="text/javascript">
$.getJSON("https://maps.googleapis.com/maps/api/place/details/json?placeid=ChIJgRUw-0_dekgRWCHhui-rPBg&fields=name,rating&key=XXX", function(json){
  $.each(json.results, function(i, place){
    myRating = place.rating;
    $("#results").append('<p>'+myRating+'</p>');
  });
});
</script>

$.getJSON(“https://maps.googleapis.com/maps/api/place/details/json?placeid=ChIJgRUw-0_dekgRWCHhui-rPBg&fields=name,rating&key=XXX“,函数(json){
$.each(json.results,function(i,place){
myRating=place.rating;
$(“#结果”)。追加(“”+myRating+”

”); }); });

任何帮助都将不胜感激

根据您在问题中提供的json,您应该使用
json.result
而不是
json.results

{
   "html_attributions" : [],
   "result" : {
      "name" : "Coffeetots Play Café",
      "rating" : 4.7
   },
   "status" : "OK"
}

查看示例结果,您会得到一个与示例不同的数组

这一点可以通过以下谷歌示例实现:

var json={
“html_属性”:[],
“下一页\u令牌”:"2.2.2.2.2.2.2.2.2.2.2.2.2.2.1.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.8.8.8.8.8.8.8.8.8.8.8.8.8.8.8.8.8.8.8.8.8.8.8.8.8.8.8.8.8.8.8.8.8.8.8.8.8.8.8.8.8.8.8.8.8.8.8.8.8.8.8.8.8.8.8.8.8.8.8.8.8.8.8.8.8.8.8.8.8.8.8 SGVNM8YZURLTTMLMWX8-doGUE56Af\U VfKjGDYW361OOIj9GmkYCFTAOCMTMIR5KYEUSNB-IEHDLZUJVRV6O9M7N4dAgr6RGHT3G1Viyls4O5YINDU6DM3GIOF1Q“,
“结果”:[
{
“几何学”:{
“地点”:{
“lat”:-33.867217,
“液化天然气”:151.195939
}
},
“图标”:”http://maps.gstatic.com/mapfiles/place_api/icons/cafe-71.png",
“id”:“7eaf747a3f6dc078868cd65efc8d3bc62fff77d7”,
“名称”:“比亚乔咖啡馆-皮尔蒙特”,
“开放时间”:{
“立即打开”:正确
},
“照片”:[
{
“高度”:600,
“html_属性”:[],
“照片参考”:“CNRNAAAMWMJ0BQA0JORM1”vjAvx1n6c7ZNBxyY-U9x99-oNyOxvMjDlo2npJzyIq7c3EK1YyoNXdMFDcRPzwLJtBzXAwCUFDGo\RtLRGBPJTA2CoerPdC5yvT2SjfDwH4bFf5MrznB0\YWA4QO7ABTAXGEBIQV46SGBWJQDI36WD3PFYBOUTLVZLA0WN-ZRITP0ZLEBH8OIBE”,
“宽度”:900
}
],
“地点id”:“ChIJIfBAsjeuEmsRdgu9Pl1Ps48”,
“范围”:“谷歌”,
“价格水平”:1,
“评级”:3.4,
“参考文件”:“Coqbeaaagu0WnJJJUZ40DMRRE3mpn7FHLFIK1MF-ce5hgkhfM79u-LQY0G2MNCUETQ2JGWU9WSGS1CTZDHTY-PCQFJYQNV2P-KDHORRIEYRHEDFBWTIWR3RGFF2ZZFBXHGNJSQ-PSZDXOU6OT2-3dzdhhpV-BPEOMTRARW4DSGL9UH773YEHDJT6R38FYVL-FYVL-5”c-BHH1G-cbQ,
“类型”:[“咖啡馆”、“酒吧”、“餐厅”、“食品”、“场所”],
“附近地区”:“皮尔蒙特皮拉马路48号”
},
{
“几何学”:{
“地点”:{
“lat”:-33.866786,
“液化天然气”:151.195633
}
},
“图标”:”http://maps.gstatic.com/mapfiles/place_api/icons/generic_business-71.png",
“id”:“3ef986cd56bb3408bc1cf394f3dad9657c1d30f6”,
“名称”:“道尔顿之家”,
“照片”:[
{
“高度”:1260,
“html_属性”:[“来自谷歌用户”],
“照片参考”:“CNRWAAAEM-aLqAm573T44qnNe8bGMkr-BOh1MOVQaA9CCggqtTwuGD1rjsviMyueX G4-mabgH41Vpr8L27sh-VFZZZ8TNCI4FYBIGK0P4FPXJB5Z1LRBZCYZM1GLRXR-YJEHD2PWEQB9CKZB349QQVEJLRYKQ2PNLOM0TOJ5B-OYROUYIYIPDBJMF4MZUMQWG”,
“宽度”:1890
}
],
“地点id”:“CHIJ5xQ7SZEUMSRS6KJ7YFZE9K”,
“范围”:“谷歌”,
“参考文件”:“CNRVAAA22K1Pagydxaghzk6erhh_h_mLUK8nflvixPjhxRbczg-gw1ZxdqUwAeDuezkolbs82Oriqh4m6-afDZV9VcpggokHD9x7HdMi9TnJDmGb9Bdh8f-ODK0FASNBL7m3CSawkumwhinqnyXiq0W5W7VBxDTQ2Kh9Til840houZfio0QHg2Hg0HgHg2HgHgHgHdHdHdHdHdHy,
“类型”:[“食品”、“场所”],
“附近地区”:“皮尔蒙特皮拉马路48号”
}
],
“状态”:“确定”
}
$.each(json.results,function(i,place){
myRating=place.rating | |“未评级”
$(“#结果”).append(“”+i+”:“+”+place.name+”+myRating+”

); });


假设您的示例是正确的,那么您所需要的就是
$(“#results”).append(“”+json.result.rating+”

”);
-也就是说,没有每个hanks,但这似乎也不起作用。是否有错误?请澄清,您确实替换了
每个()
使用该行循环,对吗?您尝试过使用和不使用each循环。这里有一个;指向代码笔的链接您的笔不工作,由于CORS问题和jQuery Placement,呼叫不工作谢谢,但这对我没有帮助。该文档用于地点搜索-我知道地点,我只想通过ID调用它,然后返回地点名称和地址放置评级。所以请显示一个完整的结果-你称之为结果,它似乎是一个数组,但你显示的是一个对象。这是我所不知道的,这就是为什么我在这里!调用JSON文件时,我得到的数据是我在OP中输入的数据。根据我的调查,你在results
“results”中得到了一个数组:[
但您有一个对象。请参阅我的第二个示例请参阅基于您的对象的第三个示例。