Javascript:当我想要得到响应时未定义
我想从邮政编码中得到城市名称。 我开始用实现它,但遇到了一些错误。我设法让它发送请求,并在“响应”选项卡上看到正确的响应,但我无法找到它 我的片段是:Javascript:当我想要得到响应时未定义,javascript,jquery,ajax,geonames,Javascript,Jquery,Ajax,Geonames,我想从邮政编码中得到城市名称。 我开始用实现它,但遇到了一些错误。我设法让它发送请求,并在“响应”选项卡上看到正确的响应,但我无法找到它 我的片段是: var countrycode = document.getElementById("countrySelect").value; var postalcode = document.getElementById("postalcodeInput").value; request = 'http://api.geonames.org/p
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);
从console.logaObj我得到:
对象{readyState:1,getResponseHeader:getResponseHeader,getAllResponseHeaders:getAllResponseHeaders,setRequestHeader:setRequestHeader,OverrideMetype:OverrideMetype,statusCode:statusCode,abort:abort,state:state,always:always,catch:catch
如果我点击more,我会看到响应出现在responseText中
console.logresponse的输出为“未定义”
如何获得响应?我错过了什么?请查找示例。getJson是异步调用,请在成功回调中编写您的逻辑,如下所示
$.getJSON(request, function(result){
//success logic
console.log(result);
//response = aObj.responseText;
//console.log(response);
});
请参考更多信息
理解力
$.getJSON是一个异步API。您能告诉我们更多关于异步API的信息以及使用什么来代替吗?@Feralheart