HTML jquery响应缓存在IE上

时间:2009-10-01 04:49:08

标签: javascript html caching jquery

我现在有一个非常粗略的gomoku版本。 我正在使用Jquery,Php和mysql数据库。

当用户点击棋盘方格时,会放置一块。 ajax刷新确定转弯计数是否已增加,并在必要时更新棋盘的html。

问题是Internet Explore(6,8,可能是7)在第一次访问时缓存该页面。即使手动刷新页面,缓存的内容也将保留。

我尝试使用

 <META HTTP-EQUIV="cache-Control" CONTENT="no-cache">
 <META HTTP-EQUIV="Pragma" CONTENT="no-cache"> 
在html页面上

没有运气。获取更新的唯一方法是通过工具删除文件。

我希望这是足够的信息。如果不是,我会尽量回答问题。


更新3 我使用了.ajaxSetup 谢谢凤凰,蒂姆和其他所有人。

4 个答案:

答案 0 :(得分:6)

每次在AJAX请求的末尾附加一个随机数,以使请求URL不同。

您将提交给服务器的随机信息位可以是数字(越大越好),随机字符串或时间戳。

var url = “http://domain?myParameters=values&pseudoParam= "+new Date().getTime();

编辑:

如果您想为AJAX请求设置全局设置,那么您可以使用

jQuery.ajaxSetup( options )

并设置缓存

jQuery.ajaxSetup({ cache: false });

对于您可以使用的每个请求

jQuery.ajax( options )

并将缓存设置为false,如@Tim

所指出的那样

答案 1 :(得分:2)

您可以尝试“cache:false”

$.ajax({url: "url", success: myCallback, cache: false});

答案 2 :(得分:0)

这是默认的IE行为。我通过在请求中添加随机数来避免这种情况。

答案 3 :(得分:0)

我刚刚发现它:

jQuery.ajaxSetup({cache:false});