转:http://blog.csdn.net/zhbitxhd/article/details/9944715
1、.在jsp中加入头
<META HTTP-EQUIV="Pragma" CONTENT="no-cache">
<META HTTP-EQUIV="Cache-Control" CONTENT="no-cache">
<META HTTP-EQUIV="Expires" CONTENT="0">
或者加入
<meta http-equiv="pragma" content="no-cache" /> <meta http-equiv="content-type" content="no-cache, must-revalidate" /> <meta http-equiv="expires" content="Wed, 26 Feb 1997 08:21:57 GMT"/>
清除临时缓存
<body onLoad="javascript:document.yourFormName.reset()">
2、.在action,使用如下声明 response.setHeader("Pragma","No-cache"); response.setHeader("Cache-Control","no-cache"); response.setDateHeader("Expires", 0);
3、.随机参数document.write("<script src='test.js?rnd="+Math.random()+"'></s"+"cript>")。
4.、jquery ajax清除浏览器缓存的两种方法:
(1)、.通过$.ajaxSetup 设置属性cache:false,让ajax不调用浏览的缓存. jQuery.ajaxSetup ({cache:false})
(2)、.可以在ajax的url后加上随机串来避免浏览缓存,如$.ajax({url:'test.php?'+parseInt(Math.random()*100000)})缓存
5.、有时候以上的方法清除缓存只清除一次,第二次就没有效果了。
所以,本人认为最佳的方法是,在调试的过程中,禁掉IE缓存,这样调试就OK了。但是,用户并不会禁掉呀,这不是出问题了吗?
用户会不会我们不去管,如果写好了js代码的话,我们在js文件后面加入一个版本号就好了。比如:
<script type="text/javascript" src="<%=baseURL%>/xhd_js/select-ajax.js?1.0"></script>
但是,如果开发者重新修改了js文件用户怎么办?
修改之后确定使用之后,再加上
<script type="text/javascript" src="<%=baseURL%>/xhd_js/select-ajax.js?2.0"></script>
则可以解决问题。 |