2015-01-12 33 views
-1

正確讀取JSON數據,我試圖用$.getJSON從NHTSA召回API獲取數據,並從Results陣列與id="data"追加Component對象爲div。這裏是我試圖讓JSON的URL: http://www.nhtsa.gov/webapi/api/Recalls/vehicle/modelyear/2000/make/honda/model/accord?format=json

這裏是我使用的代碼片段:

`VAR URL = 'http://www.nhtsa.gov/webapi/api/Recalls/vehicle/modelyear/2000/make/honda/model/accord?format=json';

$.getJSON(url, function(data) { 
    console.log(data.Results);   

    $.each(data.Results, function(i,Results){ 
     var component = this.Component; 

     $('#data').append('<h4>' +component+ '</h4>'); 
    } 
} 

我已經使用了這個類似的格式的一些其他的API,它的工作,所以我不知道爲什麼呼叫沒有通過。

+0

使用'this.Component;'回調內將需要綁定。 「附加」中如何使用「結果」並不清楚。 –

+0

你還沒有描述問題是什麼。你的迭代中是否有錯誤?或者電話沒有通過? – praneetloke

+0

對不起。電話只是沒有通過@praneetloke – James

回答

0

我遇到了使用$ .getJSON的交叉原點請求問題(因爲我經常這樣做),所以我嘗試了jsonp併成功。請試試看,如果您有任何疑問,請告訴我。

$(document).ready(function() { 
 
    var http = 'http://www.nhtsa.gov/webapi/api/Recalls/vehicle/modelyear/2000/make/honda/model/accord?format=json'; 
 
    $.ajax({ 
 
     url: http, 
 
     dataType: 'jsonp', 
 
     jsonpCallback: "callback", 
 
     type: "GET", 
 
     success: function (data) { 
 
      var div = $('#data'); 
 
      for(var i = 0; i < data.Results.length; i++) { 
 
       $(div).append('<div>' + data.Results[i].Component + '</div>'); 
 
      } 
 
     } 
 
    }); 
 
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> 
 
<div id="data"></div>

+0

謝謝!它工作完美。 – James