我有以下jquery代码,它从url中提取json数据;然而,它一遍又一遍地给我相同的报价,而不是随机的。如果我直接在浏览器上使用url,它会随机化报价。我错过了什么?感谢
$(document).ready(function() {
$("#getMessage").on("click", function(){
$.getJSON("https://quotesondesign.com/wp-json/posts?filter[orderby]=rand&filter[posts_per_page]=1&callback=", function(a) {
console.log(a[0].content + " " + a[0].title)
$("#quote-content").html(a[0].content)
$("#quote-title").html(a[0].title)
});
});
答案 0 :(得分:3)
您可以为jQuery关闭AJAX缓存,如下所示:
$(document).ready(function() {
$.ajaxSetup({ cache: false });
//...
});
或者你可以为每个请求更改url(因此它不会被缓存),这样的东西可以工作:
$(document).ready(function() {
$("#getMessage").on("click", function(){
$.getJSON("https://quotesondesign.com/wp-json/posts?filter[orderby]=rand&filter[posts_per_page]=1&callback=&"+new Date().getTime(), function(a) {
//...
});
});
});
另外,我认为您不需要callback=
参数