2013-05-03 60 views
1

我寫了$ .ajax函數來進行API調用。但結果僅在Chrome瀏覽器中顯示。 API調用的結果不會顯示在Firefox瀏覽器上。此外,Ajax調用在IE瀏覽器中完全不起作用。任何人都可以請告知爲什麼這個問題即將到來。JSON解析不工作在Mozilla Firefox瀏覽器

以下是我所使用的代碼:

var seriesurl = "http://t2json.tgoservices.com/818746/PrinterManufacturers/21/PrinterSeries"; 

$.ajax({ 
    cache: false, 
    url: seriesurl 
}).done(function (data, textStatus, jqXHR) { 
    $.each(data, function (i, item) { 
     var items = item.PrinterSeries.Items; 

     for (var a = 0; a < items.length; a++) { 
      var id; 

      $("#content1").html('<a class="manufacturer" onclick="getprinter(' + items[a].Id + ',' + n + ');" id="' + items[a].Id + '" style="cursor:pointer;" >' + items[a].Name + '</a>'); 
     } 
    }); 
}).fail(function (jqXHR, textStatus) { 
    $('#status').html(textStatus); 
    $('#content').html('(failed)'); 
}); 
+0

你是否檢查過螢火蟲的迴應內容? – Satya 2013-05-03 10:50:34

+0

yes以下是螢火蟲響應: {「T2Json」:{「version」:「1.1.0」,「PrinterSeries」:{「Items」:[{「Id」:「70」,「Name」:「 DCP Series「},{」Id「:」72「,」Name「:」FAX Series「},{」Id「:」74「,」Name「:」HL Series「},{」Id「:」76 「,」Name「:」Intellifax「},{」Id「:」77「,」Name「:」MFC Series「}]}}} – Rash 2013-05-03 11:01:08

+0

您是否介意顯示您的html代碼 – Satya 2013-05-03 11:19:31

回答

2

我認爲,這個問題從沒有確定初始Ajax請求的dataType莖。

if(!window.console) console = {log:function(){}}; 
function getData(){ 
var seriesurl = "http://t2json.tgoservices.com/818746/PrinterManufacturers/21/PrinterSeries"; 
$.get(seriesurl,function(data){ 
    console.log(data); 

    var items = data.T2Json.PrinterSeries.Items; 
    console.log(items); 

    for(var a = 0; a < items.length; a++) { 
     $("#content1").append('<a class="manufacturer" onclick="getprinter('+items[a].Id+');" id="'+items[a].Id+'" style="cursor:pointer;" >'+ items[a].Name + '</a><br>'); 
    } 

},'json'); //--dataType definition (json, jsonp, html, xml, etc...) 
} 

請注意,我稍微修改了您的代碼。在生成的錨標籤中有一個「n」變量,這個變量在代碼片段中沒有定義,所以我將其作爲示例進行了刪除。

如果您更喜歡使用ajax簡寫,只需要添加dataType:json設置即可。

相關問題