Ajax缓存

//  Ajax缓存 请求一次,页面不会在次访问这个方法,会读取缓存数据$(".routeTips").live("mouseenter",function () {    var $this = $(this);    var billcode = $(this).attr("data-sitecode");    var key = "A027" + billcode;    if (isCache) {        if (cacheRouteTips[key]) {            $this.manhua_bubbletips({ position: "t", value: 35, content: cacheRouteTips[key] + "", last: true });        } else {            if (req) {                req.abort();            }            postData();        }    }else {        postData();    }    function postData() {        req = $.ajax({            type: "post",            dataType: "json",            url: "/postdate.aspx",            data: "id=" + billcode + "&type=A018",            cache: false,            timeout: 20000,            success: function (msg) {                if (msg.Result[0]["status"] == "true") {                    $this.manhua_bubbletips({ position: "t", value: 35, content: msg.Result[0]["site"] + msg.Result[0]["tel"] + "", last: true });                    cacheRouteTips[key] = msg.Result[0]["site"] + msg.Result[0]["tel"];                }            }        });    }});
时间: 2024-08-25 14:08:36

Ajax缓存的相关文章

比较全的Ajax缓存问题汇总

项目有时要用一些Ajax的效果,因为比较简单,也就没有去用什么Ajax.net之类的东西,手写代码也就实现了.第二天,有人向我报告错误:说是只有第一次读取的值正常,后面的值都不正常:我调试了一下 ,确实有这样的问题,查出是因为AJAX缓存的问题.解决办法有如下几种:澳门赌场有哪些 在服务端加 header("Cache-Control: no-cache, must-revalidate");(如php中) 在ajax发送请求前加上 anyAjaxObj.setRequestHeade

对jquery的ajax进行二次封装以及ajax缓存代理组件:AjaxCache

虽然jquery的较新的api已经很好用了, 但是在实际工作还是有做二次封装的必要,好处有:1,二次封装后的API更加简洁,更符合个人的使用习惯:2,可以对ajax操作做一些统一处理,比如追加随机数或其它参数.同时在工作中,我们还会发现,有一些ajax请求的数据,对实时性要求不高,即使我们把第一次请求到的这些数据缓存起来,然后当相同请求再次发起时直接拿之前缓存的数据返回也不会对相关功能有影响,通过这种手工的缓存控制,减少了ajax请求,多多少少也能帮助我们提高网页的性能.本文介绍我自己关于这两方

Ajax缓存解决办法【转】

项目有时要用一些Ajax的效果,因为比较简单,也就没有去用什么Ajax.net之类的东西,手写代码也就实现了.. 第二天,有人向我报告错误:说是只有第一次读取的值正常,后面的值都不正常:我调试了一下 ,确实有这样的问题,查出是因为AJAX缓存的问题:解决办法有如下几种:       1.在服务端加 header("Cache-Control: no-cache, must-revalidate");(如php中) 2.在ajax发送请求前加上 anyAjaxObj.setRequest

Ajax缓存解决办法

转载一篇文章,在做聊天室的过程中困惑我很久的一个问题.呵呵,太感谢作者了.原文如下: 项目有时要用一些Ajax的效果,因为比较简单,也就没有去用什么Ajax.net之类的东西,手写代码也就实现了.. 第二天,有人向我报告错误:说是只有第一次读取的值正常,后面的值都不正常:我调试了一下 ,确实有这样的问题,查出是因为AJAX缓存的问题:解决办法有如下几种:       1.在服务端加 header("Cache-Control: no-cache, must-revalidate");(

jquery是如何清除ajax缓存的

大家都知道万恶的IE在ajax中往往只读取第一次ajax请求时候的数据,其余时候都是从cache提取数据,(太懒了T_T).原生的JS清除ajax缓存的方法多,但是终觉有点繁琐,如果是用jquery的同学,就设置一个参数就OK了,那就是cache: false,比如: $.ajax({ url: "mms-draft!getMmsDraftList", cache: false, dataType : "json", data:{ //some parameters

IE浏览器下ajax缓存导致数据不更新的解决方法

摘自:http://www.iefans.net/ie-ajax-json-shuju-huancun/ 最近做设计的时候遇到一个小问题,当你用jquery的getjson函数从后台获取数据的时候,IE浏览器会自动设置缓存,如果此时你对数据进行修改的时候刷新页面,IE并不会在页面显示你修改后的数据,因为你刷新的时候IE浏览器会查找缓存并显示你修改前的数据,最后在网上查了些资料终于解决了IE浏览器下的问题. 方法就是在你的请求的URL 后面设置个可变的参数,比如: Java代码 $.getJSON

IE8 ajax缓存问题

娘希匹,又遇到缓存问题了. 下面的代码,在其他浏览器都是正常的,但是在IE8中出现诡异问题. $.ajax({ url:dataUrl, data:encodeURI(currentjsonform), dataType:'JSON', async:false, success:function(item){ debugger; .... } }); 经过仔细排查,尼玛是 IE8 存在的 ajax 缓存问题.尼玛,执行到这里,实际上,并没有访问我们后台的代码,而是使用了以前缓存的结果,后台进行调

Ajax缓存问题怎么解决?

项目有时要用一些Ajax的效果,因为比较简单,也就没有去用什么Ajax.net之类的东西,手写代码也就实现了.第二天,有人向我报告错误:说是只有第一次读取的值正常,后面的值都不正常:我调试了一下 ,确实有这样的问题,查出是因为AJAX缓存的问题.解决办法有如下几种: 在服务端加 header("Cache-Control: no-cache, must-revalidate");(如php中) 在ajax发送请求前加上 anyAjaxObj.setRequestHeader("

web 开发之js---页面缓存, jsp 缓存, html 缓存, ajax缓存,解决方法

有关页面缓存问题.这个问题上网找了好多.但发觉各种解决方法,都彼此分离,没有一篇统一的解决方法,本人近日,也遇到了页面缓存的问题,根据网上各页面缓存的解答,做了一个总结. 1.服务器端缓存的问题, 防止JSP页面缓存: [java] view plaincopy <% // 将过期日期设置为一个过去时间 response.setHeader("Expires", "Sat, 6 May 1995 12:00:00 GMT"); // 设置 HTTP/1.1 n