2

jQuery に関連する同様の質問が見つかりました。私の目標は、jQueryMobile と PhoneGap (JSONP を使用) でキャッシュを防止する方法を理解することです。リストビューを動的に埋める ajax 呼び出しを行っています。ページを初期化するたびに Web サービスにクエリを実行したい (pageinit)。私の Android デバイスでは、新しいクエリの後、ページに移動するたびにデータがリストビューに追加されます。削除されず、ページにアクセスするたびに複製を追加しています。キャッシングと関係があると思います。コードに次のようなものを追加しました。

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

Chrome および Safari ブラウザではキャッシュできませんが、Android デバイスでは機能しません。Android デバイスでのキャッシュを防ぐ方法は?

PS。この質問は似ていますが、同じではないかもしれません: How to prevent caching from jQuery Ajax?

4

1 に答える 1

3

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.');
  }
});
于 2012-09-11T07:14:47.783 に答える