我正在使用 django v.1.6 和 dajaxice v.0.6。我遇到了 ajax 在某些运行 Chrome 的 android 设备上无法运行的问题。
据我了解,这是一个缓存问题。自己使用 ajax 的人似乎通过在 ajax 函数中将缓存设置为 false 来解决这个问题。此处的示例显示了您通常如何使用 ajax 来解决此问题。
$.ajax({
url: "yoururl.html",
context: document.body,
cache : false,
data: {
username : $('#username').val(),
password : $('#password').val(),
},
success: function ( data ) {
// do something
}
});
显然,这并不总是像对上一个代码段的回复那样有效,有人回应说,在 jQuery 1.7.1 之后,您可能需要添加一个时间戳,如下所示:
$.ajax( { url: "someserver/somepath/blah" + "?_=" + jQuery.now(), type: "PUT", data: somedata});
这是我尝试开始工作的代码示例:
function refresh_word(){
Dajaxice.game.refreshWord(Dajax.process,{'game_id':{{game.id}},'player_id':{{player.id}}});
}
就像我说的,这适用于 iPhone 和桌面浏览器,但在某些 android 设备上失败。
我抓着稻草,我尝试禁用整个页面的缓存,但它似乎仍然不起作用。
$(document).ready(function() {
$.ajaxSetup({ cache: false });
});
有没有办法用 dajax 做到这一点?
提前感谢您的帮助!