2011-02-16 57 views
0

我有以下數據結構從雅虎API返回:在回調函數訪問JSON數據結構

cbfunc({ 
    "query": { 
     "count": 1, 
     "created": "2011-02-16T00:48:51Z", 
     "lang": "en-US", 
     "results": { 
      "place": { 
       "woeid": "2487956" 
      } 
     } 
    } 
}); 

在我的代碼,我試圖訪問它,如下所示:

$.getJSON(url,function(json) 
{ 
    $.each(json.query.results.place, function(i, item) 
    { 
     alert(item.woeid); 
    }); 
}); 

但它不起作用。任何幫助將非常感激。謝謝。

回答

0

我問這個問題還爲時過早。我做了一個像這樣的阿賈克斯設置:

$.ajaxSetup({"error":function(XMLHttpRequest,textStatus, errorThrown) { 
     alert(textStatus); 
     alert(errorThrown); 
     alert(XMLHttpRequest.responseText); 
    }}); 

和一切都是固定的。那麼,至少我發現有一個分析錯誤,然後重新格式化數據!

對不起!

0

我認爲這是JSONP而不是JSON。你可以通過編寫一個叫做cbfunc的函數在返回的json上使用eval。