最近在做项目的时候,遇到一个问题,使用Jquery的ajax方法进行异步提交时,在IE浏览器下会存在缓存问题,即当第一次请求发送到服务器后,如果后续的请求参数跟第一次相同,则浏览器会直接返回缓存的结果而不是去服务器获取(经测试,在火狐与谷歌浏览器中不存在这样的问题)。通过上网查找有关资料,现将解决方案总结如下:
1)使用ajax方法提供的cache属性,该属性的默认值为true,如果设计为false,它会强制请求的页面不会被浏览器缓存:
$.ajax({
url:' ',
type:' ',
cache:false
});
2)在请求的参数后添加一个时间戳
$.ajax({
url:' ',
type:' ',
data:{
param1:value1,
param2:value2,
time:Math.random()
}
});