EasyUI中datagrid在ie下reload失败解决方案


Posted in Javascript onMarch 09, 2015

问题

最近使用EasyUI开发后台系统,测试时发现个奇葩的问题,$('dg').datagrid('reload'); 重新加载表格数据时,ie下一点反应都没有。后来发现其实并不是没有反应,而是浏览器使用了缓存。

解决方案

网上网友总结出来的解决方案有以下几种:

1.在url后加时间戳,使第一次加载和reload中访问的url不一致,使系统无法使用IE缓存。通过测试发现,EasyUI请求时后面已经自带一串随机数_145232xxx,但是ie还是会使用缓存。后来我在请求的js中为url加上rand=xxx(Math.rand()生成的随机数)就不会使用缓存了。(我测试了从ie8到ie11)

2.用类似于在<head>中加<meta>来清除缓存:

<META HTTP-EQUIV="pragma" CONTENT="no-cache">

<META HTTP-EQUIV="Cache-Control" CONTENT="no-cache, must-revalidate">

<META HTTP-EQUIV="expires" CONTENT="Wed, 26 Feb 1997 08:21:57 GMT">

很不幸,跟很多网友一样,这个方法我也失败了。:(

3.将datagrid的load对应的method声明为‘POST',这个解决方法最快。但是有有几个问题:
•要是该服务端接口不支持POST方式就歇菜了。
•要是服务端接口自己能控制,这种为了前端妥协的方式,会导致接口一点也不RESTful!要知道RESTful接口对于查询的设计基本上都是GET方式的。

总结

所以说还是第一种方法,在url自己加随机数好用,原谅我代码洁癖不想改服务端接口 _(:з」∠)_。

Javascript 相关文章推荐
Javascript读取cookie函数代码
Oct 16 Javascript
javascript制作幻灯片(360度全景图片)
Jul 28 Javascript
JS中对象与字符串的互相转换详解
May 20 Javascript
JQuery遍历元素的后代和同胞实现方法
Sep 18 Javascript
微信公众号支付H5调用支付解析
Nov 04 Javascript
tab栏切换原理
Mar 22 Javascript
Javascript面试经典套路reduce函数查重
Mar 23 Javascript
jQuery实现简单的滑动导航代码(移动端)
May 22 jQuery
vue router2.0二级路由的简单使用
Jul 05 Javascript
使用3D引擎threeJS实现星空粒子移动效果
Sep 13 Javascript
Vue+jquery实现表格指定列的文字收缩的示例代码
Jan 09 jQuery
json数据格式常见操作示例
Jun 13 Javascript
JS控制网页动态生成任意行列数表格的方法
Mar 09 #Javascript
jQuery随机密码生成的方法
Mar 09 #Javascript
jQuery实现简单的间隔向上滚动效果
Mar 09 #Javascript
jQuery实现鼠标划过展示大图的方法
Mar 09 #Javascript
javascript 对象数组根据对象object key的值排序
Mar 09 #Javascript
jquery插件corner实现圆角边框的方法
Mar 09 #Javascript
jQuery中animate用法实例分析
Mar 09 #Javascript
You might like
PHP操作XML作为数据库的类
2010/12/19 PHP
php抽象类用法实例分析
2015/07/07 PHP
Zend Framework+smarty用法实例详解
2016/03/19 PHP
微信红包随机生成算法php版
2016/07/21 PHP
php简单压缩css样式示例
2016/09/22 PHP
php 截取中英文混合字符串的方法
2018/05/31 PHP
用Javascript 获取页面元素的位置的代码
2009/09/25 Javascript
QQ空间顶部折页撕开效果示例代码
2014/06/15 Javascript
JQuery实现可直接编辑的表格
2015/04/16 Javascript
JS控制文本域只读或可写属性的方法
2016/06/24 Javascript
web前端开发upload上传头像js示例代码
2016/10/22 Javascript
AngularJs 利用百度地图API 定位当前位置 获取地址信息
2017/01/18 Javascript
js获取浏览器和屏幕的各种宽度高度
2017/02/22 Javascript
JS实现简单拖拽效果
2017/06/21 Javascript
extjs简介_动力节点Java学院整理
2017/07/17 Javascript
Bootstrap滚动监听组件scrollspy.js使用方法详解
2017/07/20 Javascript
Vue 路由 过渡动效 数据获取方法
2018/07/31 Javascript
解决Vue.js由于延时显示了{{message}}引用界面的问题
2018/08/25 Javascript
jQuery实现简单飞机大战
2020/07/05 jQuery
让python在hadoop上跑起来
2016/01/27 Python
详解Python 序列化Serialize 和 反序列化Deserialize
2017/08/20 Python
Python3.6日志Logging模块简单用法示例
2018/06/14 Python
通过Python模块filecmp 对文件比较的实现方法
2018/06/29 Python
python实现多进程代码示例
2018/10/31 Python
用Python将结果保存为xlsx的方法
2019/01/28 Python
python requests抓取one推送文字和图片代码实例
2019/11/04 Python
python系统指定文件的查找只输出目录下所有文件及文件夹
2020/01/19 Python
python lambda函数及三个常用的高阶函数
2020/02/05 Python
HTML5 语音搜索只需一句代码
2013/01/03 HTML / CSS
帕克纽约:PARKER NY
2018/12/09 全球购物
宾馆仓管员岗位职责
2014/07/27 职场文书
2016年党校科级干部培训班学习心得体会
2016/01/06 职场文书
小学科学课教学反思
2016/02/23 职场文书
Mysql - 常用函数 每天积极向上
2021/04/05 MySQL
mysql连接查询中and与where的区别浅析
2021/07/01 MySQL
P站美图推荐——变身女主角特辑
2022/03/20 日漫