如何防止在Internet Explorer中缓存jQuery Ajax请求?
当前回答
Cache-Control: no-cache, no-store
这两个头值可以在IE和Firefox上组合以获得所需的效果
其他回答
你可以使用$.ajaxSetup()禁用全局缓存,例如:
$.ajaxSetup({ cache: false });
这将在发出请求时向查询字符串追加时间戳。要关闭特定$.ajax()调用的缓存,在本地设置cache: false,如下所示:
$.ajax({
cache: false,
//other options...
});
以下是一个回答建议:
http://www.greenvilleweb.us/how-to-web-design/problem-with-ie-9-caching-ajax-get-request/
这个想法是在ajax查询中添加一个参数,例如包含当前日期和时间,这样浏览器就不能缓存它。
看一下链接,解释得很清楚。
Cache-Control: no-cache, no-store
这两个头值可以在IE和Firefox上组合以获得所需的效果
如果你设置了唯一的参数,那么缓存不工作,例如:
$.ajax({
url : "my_url",
data : {
'uniq_param' : (new Date()).getTime(),
//other data
}});
这是一个老帖子,但如果IE给你带来麻烦。将GET请求更改为POST, IE将不再缓存它们。
我花了太长时间才明白这是怎么回事。希望能有所帮助。
推荐文章
- 它是可能的动画scrollTop与jQuery?
- 我需要哪个选择器来选择一个文本选项?
- 如何添加ID属性Html.BeginForm()在asp.net mvc?
- 如何获得<html>标签html与JavaScript / jQuery?
- 如何禁用ts规则为特定的行?
- 检测浏览器自动填充
- jQuery的小写和大写
- 遍历<select>选项
- jQuery滚动到页面底部/iframe
- 使用jQuery选择前“n”项
- 在ASP中使用jQuery渲染局部视图。NET MVC
- Jquery如果div id有子
- 如何使用jQuery获取一个表单元格值?
- 如何使用jQuery去一个URL ?
- 内容=“X-UA-Compatible IE = 9;IE = 8;IE = 7;IE =边缘”