2011-07-31 147 views
0

今天早上我問了一個關於jQuery代碼不工作的問題(它使用API​​來獲取json文件),然後一些好的人告訴我必須在jsonp中使用json文件來使用回調函數,而我沒有。Again +更新:此jQuery代碼不起作用,爲什麼?

我與提供API的網站開發人員進行了交流,他解決了問題,以便它支持jsonp,但代碼仍然無法使用!

這裏是頁面的代碼(你可以看到它查看此頁面http://rawaji.com/test.html源)

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" 
        "http://www.w3.org/TR/html4/loose.dtd"> 
<html> 
<head> 

<script src="http://code.jquery.com/jquery-latest.js"></script> 
<script> 
    $(document).ready(function(){ 
    $.getJSON("http://api.qaym.com/0.1/countries/key=u2gTerCTZDudTCMhQBQ9&jsoncallback=?", 
     function(data){ 
      $.each(data, function(i,item){ 
      $("#results").append("<span class='result' >" + item.name + "</span></br>"); 
      if (i == 3) return false; 
      }); 
     }); 
    }); 
    </script> 

</head> 
<body> 
    <div id="results"> 
    </div> 
</body> 
</html> 

只是一個小紙條,那螢火告訴我沒有錯誤代碼,甚至控制檯告訴該文件正確導入(請參閱圖像http://twitpic.com/5yycg5

什麼是缺失! :(

UPDAATE

我用另一種安慰時,安慰,它顯示了我這個消息

鍵= u2gTerCTZDudTCMhQBQ9 & jsoncallback = jQuery16206894429267849773_1312140242381:-1 資源解釋爲腳本,但與MIME轉移type application/json。

我只是kn對此無關,但我會搜索它。如果有人有一個想法,PLZ告訴:)

回答

1

這工作:

$(function(){ 
    $.ajax({ 
     url: 'http://api.qaym.com/0.1/countries/key=u2gTerCTZDudTCMhQBQ9', 
     dataType: 'jsonp', 
     crossDomain:true, 
     success:function(data){ 
      $.each(data, function(i,item){ 
       $("#results").append("<span class='result' >" + item.name + "</span></br>"); 
       if (i == 3) return false; 
      }); 
     }, 
     error:function(jqxhr,err,status){ 
      alert(status); 
     } 
    }); 
}); 

的401錯誤回來要求身份驗證 - 無效的API密鑰。

http://jsfiddle.net/AlienWebguy/CqrPe/

+0

仍然不工作!即使在你的頁面中也看到源代碼http://rawaji.com/test.html – Fahd

+0

,即使你複製了json文件的鏈接,它也只是打印json文件 – Fahd

+0

一個401錯誤。你需要調查你的HTTP授權:http://www.checkupdown.com/status/E401.html – AlienWebguy

相關問題