我正在嘗試獲取將響應JSON數據的geonames API。 我創建一個dataStorage對象並將響應放入它。 目前我從存儲對象獲取值時有問題。存儲對象的json響應,以便可以從對象中獲取值
這裏是我的代碼:
var dataStorage = new Object();
function CountryQuery(geoId, geoCode) {
$.ajax({
type: "GET",
url: "http://api.geonames.org/childrenJSON?geonameId=" + geoId + "&username=tompi",
dataType: "json",
success: function(data) {
dataStorage[geoCode] = data;
}
});
}
if (!('AN' in dataStorage)) {
CountryQuery(6255152, "AN");
}
$(dataStorage).find('AN').geonames.countryName;
的JSON響應看起來象下面這樣:
{
"totalResultsCount":2,
"geonames":[
{
"countryId":"6697173",
"countryCode":"AQ",
"name":"Antarctica",
"countryName":"Antarctica"
},
{
"countryId":"3371123",
"countryCode":"BV",
"name":"Bouvet Island",
"countryName":"Bouvet Island"
}
]
}
你能提供一個JSON片段嗎?現在無法訪問它,首先想看看它。 – Dandy
你正在初始化'datastorage'的方式是錯誤的。如果你提供了一個預期的JSON樣本,這將會有所幫助 –
@mplungjan可能datastorage是全局的,他希望在一個名爲'geoCode'的鍵中添加響應。這樣他可以使用IN在他使用它..雖然不是非常清楚.. –