1
ランダムクォートジェネレータWebアプリケーションを作成しています.JQueryを使用してAPIを呼び出してから、返されたJSONデータを使用して見積もりを出力できます。別の見積もりのためにAPIを呼び出すためのボタンを実装しましたが、getJSON関数を呼び出しますが、新しいJSONデータは取得しません。JQuery - DivをリロードしてAPIを呼び出すとき
完全なコードはCodePenである:http://codepen.io/oscarwong67/pen/eZLQLz
は、ここで私は引用を得るために使用するものです:
<div class="col-xs-12 col-sm-8 col-md-6 text-center" id="quote-div">
<p id="quote">Loading Your Quote</p>
<p id="speaker"></p>
<button class="btn btn-default btn-block" id="new-quote">New Quote!</button>
</div>
機能:
var getQuote = function() {
$.getJSON("http://quotesondesign.com/wp-json/posts?filter[orderby]=rand&filter[posts_per_page]=1" + "?callback?", function(json) {
console.log(json);
$("#quote").html(json[0].content);
$("#speaker").html("- " + json[0].title);
});
}
getQuote(); //called when the page initially loads
$("#new-quote").on("click", function() {
getQuote();
});
そして、ここではそれが変化し、関連するHTMLですページが最初に読み込まれたときに呼び出され、ボタンのクリックで呼び出されますが、返されたJSONは変更されません。
問題は$ .getJSONのあなたの結果がキャッシュされていることです。 cache:falseオプションで$ .ajaxを使用するか、$ .getJSONにとどまり、$ .ajaxSetup({cache:false})を使用してください。 –