现在的位置: 首页 > 综合 > 正文

只能怪自己2了。。。传说中的ie缓存机制

2019年11月01日 ⁄ 综合 ⁄ 共 790字 ⁄ 字号 评论关闭

只能怪自己2了。。。传说中的ie缓存机制

转载:http://zyiangel.blogbus.com/logs/83889021.html


找到一张很好玩的图片。不过跟文章的哦内容有些许区别
昨天晚上做了个ajax的留言板。在ff上测试的好好的,为问题。到了ie上,就悲剧。
先贴个留言板的图

功能就是用户在填写完整之后提交,会写进数据库,然后显示到留言板,这些步骤是用ajax实现的。后台php代码和js代码就不打上来了,都是挺简单的。全部加起来都可能没50行的。说问题:问题就是在ie,所有的ie(ie6,ie7,ie8)里,按了提交。没反应的。然后看数据库,又新增的一行。内容什么的都对。朱一想了很久,才想起来。传说中的ie缓存机制。
然后做一个传统的处理就好了。
为了自己别再忘了,也为了教育下一代(什么情况),我说下原理以及处理方法。
ie的缓存技术的意思就是,如果你这个网址(就是网址)已经出现过了,就是说已经浏览过了。不过是ajax的后台浏览都是一样的。朱一的问题,就是网页第一次打开的时候,就已经浏览的ajax效果的php的地址。那么,那个访问的结果(就是一个json)就被缓存了,下一次在访问这个php的时候,ie就觉的他被访问过了,就用了缓存的json。但是悲催的是新的json跟缓存的是不一样的。
那怎么解决呢。就是好和原来的网址不一样就好了。那怎么不一样呢?那要让网址不一样最简单的就在网址后面加参数(例如原网址是demo.php 改成demo.php?A=123&b=234),那有不能重复,又要比较方便,于是,就用js提供的时间函数好了,用Date(),就好比"demo.php?date="+Date()就好了。
不知道朱一这么一说听的能不能懂。

PS:恭喜朱一的博客访问量超过700,J.k.罗琳说7是一个神奇的数字。

抱歉!评论已关闭.