javascript - 无法从 MapQuest API 返回的 JSON 中检索值

标签 javascript jquery html json dom

所以,我不明白为什么这行不通:

$.getJSON('http://www.mapquestapi.com/geocoding/v1/reverse?key=KEY&callback=renderReverse&json&location=' + lat + ',' + longi, function(geo) {
    $('#location').html(geo.response.results[0].locations[0].adminArea4);
});

返回的json是:

{
    "results": [
        {
            "locations": [
                {
                    "latLng": {
                        "lng": -1,
                        "lat": 51
                    },
                    "adminArea4": "Hamp",
                    "adminArea5Type": "City",
                    "adminArea4Type": "County",
                    "adminArea5": "Ba and De",
                    "street": "Teal Crescent",
                    "adminArea1": "GB",
                    "adminArea3": "England",
                    "type": "s",
                    "displayLatLng": {
                        "lng": -1.145731,
                        "lat": 51.240441
                    },
                    "linkId": 0,
                    "postalCode": "RG3",
                    "sideOfStreet": "N",
                    "dragPoint": false,
                    "adminArea1Type": "Country",
                    "geocodeQuality": "ADDRESS",
                    "geocodeQualityCode": "L1AAA",
                    "mapUrl": "http://www.mapquestapi.com/staticmap/v4/getmap?key=Fmjtd|luubnu0yn5,7g=o5-9072ur&type=map&size=225,160&pois=purple-1,51.2401563,-1.1463337,0,0|&center=51,-17&zoom=15&rand=-859825484",
                    "adminArea3Type": "State"
                }
            ],
            "providedLocation": {
                "latLng": {
                    "lng": -1.146334,
                    "lat": 51.240156
                }
            }
        }
    ],
    "options": {
        "ignoreLatLngInput": false,
        "maxResults": -1,
        "thumbMaps": true
    },
    "info": {
        "copyright": {
            "text": "© 2013 MapQuest, Inc.",
            "imageUrl": "http://api.mqcdn.com/res/mqlogo.gif",
            "imageAltText": "© 2013 MapQuest, Inc."
        },
        "statuscode": 0,
        "messages": []
    }
}

我猜这是因为我得到的 geo.response.results 有点错误!

帮助将不胜感激。

最佳答案

返回的 JSON 中没有 response 键。试试这个:

$.getJSON('http://www.mapquestapi.com/geocoding/v1/reverse?key=KEY&callback=renderReverse&json&location=' + lat + ',' + longi, function(geo) {
    $('#location').html(geo.results[0].locations[0].adminArea4);
});

关于javascript - 无法从 MapQuest API 返回的 JSON 中检索值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19662428/

相关文章:

javascript - 在 firebase 中存储 Youtube 视频 URL,然后在 <iframe> 中插入 URL 不显示视频

javascript - JQuery 插件日期选择器无法按照文档正常工作

javascript - 如何从网页上的 javascript 文件中删除 html 标签?

javascript - 滑出式菜单不显示网页第 2 部分中的导航链接

javascript - 为什么 fs.writeFileSync() 会抛出 "is not a function"错误?

javascript - SvelteKit-如何在后续调用中正确显示服务器渲染页面中的加载指示器

javascript - 使用淡入和延迟以及 ng-repeat 来显示列表项

javascript - 网站未加载。 jQuery 未定义

html - 如何根据子元素的数量添加按钮?

javascript - 如何将 div 放置在两个 iframe 上,其中一个 iframe 具有外部(不同域)内容?