解决easyui-datagrid在ie中无法reload问题
easyui在页面载入时,会自己主动填充datagrid中的数据,当加入、改动、删除后,会触发reload事件,对datagrid进行又一次载入。
这个过程在FireFox中没有问题,用firebug观察发现前后两次http状态码都是200,证明两次都是从server又一次取的新数据,没实用浏览器中的缓存。
可到了IE中,发现第一次载入时的http状态码是200,reload时的http状态码是304,证明reload时的数据是从缓存中读取的,造成的结果是加入后datagrid表格不更新。
方案一:,在url后加时间戳,使第一次载入和reload中訪问的url不一致,使系统无法使用IE缓存,可通过观察状态码发现,时间戳是加上了,但两次訪问的url还是同样,无法消除缓存。
方案二:用类似于在<head>中加
这种表头的方式清除缓存,结果还是失败了。最后大哥周响出马,提出方案三:把提交方法method由get改为了post,问题解决。
至于为什么post机制能消除缓存,还有待研究。因为浏览器兼容问题,总是存在这样那样的问题,仅仅要我们抱着一个必胜的信心就一定能解决这个问题。
上周还在纠结,这功能我能实现吗?如今页面摆在我面前,点个button响应一个事件,看着自己的劳动成果,我想说“我骄傲”。