2012-04-11 19 views

答えて

1

使用jQuery.getJSON()関数

は、あなたがそのような要求を行うためにJSONPを使用することができますが、私はあなたがアクセスしようとしているURLはJSONP機能を持っていないと思います。このチュートリアルをhttp://api.jquery.com/jQuery.getJSON/

+1

getJSONは、(OPがGitHubで動作しているのでなければ)ドメイン間の要求である可能性が最も高いため、OPの状況ですぐに動作しません。 'callback =?'を追加する必要があります。 getJSONを動作させるためにURLに追加します。いずれにしても、エラーを正常に処理できるように、$ .ajaxをベストプラクティスとして使用することをお勧めします。 – ErJab

+0

$ .getJson()はAjax関数の省略形です。http://api.jquery.com/jQuery.getJSON/ –

+2

はい、私は$ .ajaxの短い手です。しかし、この特定の状況では、 '&callback =?' OPがクロスドメインコールを行っているため、getJSONを呼び出すときにURLに渡すと動作しません。 – ErJab

3

を行きます。あなたは(私はあなたが使用しようとしているURLごとに推測)の為替レートをしたいので、あなたが使用できます。


$(document).ready(function(){ 
    $.ajax({ 
     url: 'http://openexchangerates.org/latest.json', 
     dataType: 'jsonp', 
     success: function(json) { 
      // Rates are in `json.rates` 
      // Base currency (USD) is `json.base` 
      // UNIX Timestamp when rates were collected is in `json.timestamp`   

      rates = json.rates; 
      base = json.base; 
      console.log(rates); 
     } 
    }); 
}); 

参考:See Here

はそれが

+0

なぜdataTypeが 'jsonp'ではなく 'jsonp'ですか? –

3

これはjQueryで動作するはずです役に立てば幸い:

$.ajax({ 
    url: 'https://raw.github.com/currencybot/open-exchange-rates/master/latest.json', 
    dataType: 'jsonp', 
    success: function (data, textStatus, jqXHR) { 
    //the variable 'data' will have the JSON object 
    // In your example, the following will work: 
    alert(data.disclaimer); 
    error: function(jqXHR, textStatus, errorThrown) { 
    //Error handling code 
    alert('Oops there was an error'); 
    } 
    } 
});