关于jquery.ajax的缓存
来源:互联网 发布:mac 怎么读取exe 编辑:程序博客网 时间:2024/06/05 20:37
项目中使用jquery的ajax中,在一些浏览器缓存数据的设置情况下,会直接用上一次ajax的请求结果,而不再请求一次。
比如,在ie11 > 工具 > Internet选项 > 设置选非“每次访问网页时”。
因为浏览器是通过URL,来判断两次请求是否相同。
所以,我们可以:
- 通过在URL中添加时间戳的方式,使浏览器认为是两次不同的请求,从而不使用缓存的数据。
- 通过jquery的ajax方法,有个cache的配置项,也以类似的方式轻松解决此问题。
但是,每个ajax请求都书写一个cache的配置,非常费劲。
所以,我们可以使用,jQuery.ajaxSetup() 方法设置全局 AJAX 默认选项。
比如:
<!DOCTYPE html><html><head><meta charset="UTF-8"><title>Ajax demo</title></head><script type="text/javascript" src="http://code.jquery.com/jquery-1.11.3.js"></script><script type="text/javascript">alert('$.ajaxSetup()...');$.ajaxSetup({ cache : false});</script><script type="text/javascript">function touchAjax() { $.ajax({ url : 'MyServlet', success : function(data) { alert('success request...'); }, error : function(XMLHttpRequest, errorInfo, exception) { alert('error -> ' + 'XMLHttpRequest : ' + XMLHttpRequest + ', errorInfo : ' + errorInfo + ', exception : ' + exception); } });}</script><body><a onclick="touchAjax();" >ajax</a></body></html>
如果用JSP,可以在每个页面引入这些公用配置,修改起来比较方便
<script type="text/javascript" src="http://code.jquery.com/jquery-1.11.3.js"></script><script type="text/javascript">alert('$.ajaxSetup2()...');$.ajaxSetup({ cache : false});</script>
<%@ page language="java" contentType="text/html; charset=ISO-8859-1" pageEncoding="ISO-8859-1"%><!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"><html><head><title>Ajax demo</title></head><%@include file="./base.jsp" %><script type="text/javascript">function touchAjax() { $.ajax({ url : 'MyServlet', success : function(data) { alert('success request...'); }, error : function(XMLHttpRequest, errorInfo, exception) { alert('error -> ' + 'XMLHttpRequest : ' + XMLHttpRequest + ', errorInfo : ' + errorInfo + ', exception : ' + exception); } });}</script><body><a onclick="touchAjax();" >ajax</a></body></html>
OK了。
0 0
- 关于jquery.ajax的缓存
- jquery的ajax缓存
- 关于JQUERY里的AJAX缓存和同步异步问题
- jquery的ajax缓存问题
- jquery的ajax的缓存问题
- 消除Jquery Ajax 缓存带来的影响
- jQuery ajax Load关闭缓存的方法
- jquery中ajax的缓存问题
- 重写jquery的ajax,解决ie缓存
- 关于jQuery.ajax的问题
- 关于ajax的JQuery使用
- 关于jQuery的Ajax操作
- jQuery Ajax缓存问题
- jquery ajax 缓存问题
- jquery ajax缓存
- 关闭jQuery Ajax缓存
- 禁用jquery ajax缓存
- jQuery ajax 缓存解决方法
- BestCoder Round #43
- web.xml 配置中classpath: 与classpath*:的区别
- eclipse扩展自定义工具栏按钮
- std::vector
- Python]网络爬虫
- 关于jquery.ajax的缓存
- 小度WiFi作为无线网卡设置的方法
- 普通Android工程转换为C/C++工程之后 再还成Android工程的解决方案
- 10 quick tips for Redis
- JavaScript Math和Number对象
- 分包压缩
- php 数组和url转换
- Oracle11g重建 em
- CGI技术原理