我想从邮政编码中获取城市名称。 我开始使用GeoNames example实现它,但我遇到了一些错误。我设法“工作”(它发送请求,并在响应选项卡上看到正确的响应,但我无法达到它。
我的摘要是:
6
从我得到的var countrycode = document.getElementById("countrySelect").value;
var postalcode = document.getElementById("postalcodeInput").value;
request = 'http://api.geonames.org/postalCodeLookupJSON?postalcode=' + postalcode + '&country=' + countrycode + '&callback=getLocation&username=myUname';
// Create a new script object
aObj = jQuery.getJSON(request)
console.log(aObj);
response = aObj.responseText;
console.log(response);
:
Object {readyState:1,getResponseHeader:getResponseHeader(),getAllResponseHeaders:getAllResponseHeaders(),setRequestHeader:setRequestHeader(),overrideMimeType:overrideMimeType(),statusCode:statusCode(),abort:abort(),state:state() ,总是:always(),catch:catch(),...
如果我点击更多,我会看到响应在responseText中。
console.log(aObj)
的输出是'undefined'
如何获得回复?我错过了什么?
答案 0 :(得分:1)
请找到样品。 getJson是异步调用,请在成功回调中编写逻辑,如下所示。
$.getJSON(request, function(result){
//success logic
console.log(result);
//response = aObj.responseText;
//console.log(response);
});
请参阅http://api.jquery.com/jquery.getjson/了解更多信息 理解。