首頁 >web前端 >js教程 >ie下jquery.getJSON的快取問題的處理方法_jquery

ie下jquery.getJSON的快取問題的處理方法_jquery

WBOY
WBOY原創
2016-05-16 17:39:01963瀏覽


在專案中遇到一個問題,在火狐下,$.getJSON();請求資料一切正常,但是在IE下面,$.getJSON();只請求一次數據,第二次根本就不發送請求了,用fiddler抓取了才知道,第二次沒有發送請求,改成了post就正常了

$.getJSON()有快取問題,如果其呼叫的url之前曾經呼叫過的話,回呼函數就會直接在快取裡取得想要得值,而不是進入到後台

解決方法如下:

1、讓每次呼叫的URL都不一樣。

方法:在參數中加一個隨機數

複製程式碼 程式碼如下:

$.getJSON"/Member/GetExercise.html" , { id: $("#Wareid").val(), isBool: loop, random:
Math.random() }, function (data) });

複製程式碼 程式碼如下:

$.getJSON("/Member/GetExercise.rand?random=Math.html? ", { id: $("#Wareid").val(),
isBool: loop,}, function (data) });

用new Date()也可以算是隨機的URL

複製代碼 代碼如下:

?random=new Date().getTime()

2、將cache設為false

複製程式碼 程式碼如下:

$.ajax({


$.ajax({
",
url:'/Member/GetExercise.html',
cache:false,
dataType:"json",
success:function (data){
alert(data);
}});
陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn