首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 网站开发 > Web前端 >

jquery load缓存有关问题

2012-09-05 
jquery load缓存问题最近在做项目,遇到一个奇怪问题,在A页面load B页面的时候,第一次打开时很正常,script

jquery load缓存问题
最近在做项目,遇到一个奇怪问题,在A页面load B页面的时候,第一次打开时很正常,

<script type="text/javascript">$.ajaxSetup({cache: false}); loadCC:function(){$("#infoCommentPage").load("${webRoot}/info/comment/${modelId}/${info.id}/1");}};$(document).ready(function(){  P.loadCC();});</script>

上面的infoCommentPage 是一个DIV的ID,
但后面在B页面提交后,要刷新B页面,问题就出来了,提交到后台的代码运行了,数据库也有数据了,然后重新redirect回来,死活B页面不刷新,没有看到最新的内容,在firefox下用firebug可以看到请求后台数据了后台断点也进去了,
但页面依旧是没有刷新,用ie8更离谱了,提交加入库的断点进去了,但是请求B页面的断点根本没有进去,这样搞死人了,找了半天,以为是JS有问题,后来用上了load的回调函数,
("#xxx").load("xxxx",function(){alert("aaaa");});

发现load方法 是调用的,所以就怀疑是缓存问题,果然一查,就是缓存搞的鬼。
$.ajaxSetup({cache: false}); 

然后在B页面上加入
    <meta charset="utf-8" />    <META HTTP-EQUIV="Pragma" CONTENT="no-cache">      <META HTTP-EQUIV="Cache-Control" CONTENT="no-cache">           <META HTTP-EQUIV="Expires" CONTENT="0">  

这样就解决了问题,在FF下仔细看还可以发现,load方法请求的时候后面都自动加上了时间
,无论在FF,IE下都可以正常刷新

热点排行