javascript - 防止 jQuery Mobile 中的 ajax 缓存

标签 javascript android ajax cordova jquery-mobile

我发现了与 jQuery 有关的类似问题。我的目标是弄清楚如何防止 jQueryMobile 和 PhoneGap 中的缓存(我使用 JSONP)。我正在进行一些动态填充 ListView 的 ajax 调用。我想在每次初始化页面 (pageinit) 时查询 Web 服务。在我的 Android 设备上,新查询后,每次访问页面时,数据都会添加到 ListView 中。它不会删除,每次访问该页面时我都会添加一个副本。我认为这与缓存有关。我在代码中添加了这样的内容:

$(document).bind('pageinit', function() {
    $.ajaxSetup ({
        cache: false
     });
});

它会阻止在我的 Chrome 和 Safari 浏览器中进行缓存,但在 Android 设备上不起作用。如何防止Android设备中的缓存?

PS。您可能会发现这个问题相似,但不一样: How to prevent caching from jQuery Ajax?

最佳答案

只需从 Math.random 创建一个随机值函数并在每次发出 ajax 请求时将其作为参数发送。它将始终避免缓存。

var myRand = Math.floor((Math.random()*1000)+1);
$.ajax({
  url: 'ajax/test.html', para: myRand , 
  success: function(data) {
    $('.result').html(data);
    alert('Load was performed.');
  }
});

关于javascript - 防止 jQuery Mobile 中的 ajax 缓存,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12364537/

相关文章:

Javascript 每个 tr 中的最高数字,跳过 3 列

javascript - 了解 JavaScript 哈希表的工作原理

android - 将 Cordova/Phonegap (3.2.0) 插件更新到项目中

Android VideoView 无法播放

javascript - 脚本在子页面上不起作用

javascript - For 循环每次迭代的值

javascript - 内容太长,如何在console.log()中显示完整的内容?

android - 应用程序启动器在 Android 中从头重新加载

javascript - 使用 Jquery 在 AJAX 内部加载 AJAX

javascript - 从 JSON 表创建可点击的搜索结果