解决easyUI 1.2.6 + datagrid在 IE浏览器下无法重新加载、查询

I) easyUI 1.2.6 + datagrid在 IE浏览器目前存在的问题

1:无法重新加载、查询

var row = $('#dg_user_table').datagrid('getSelected');

$('#dg_userPri_table').datagrid(
                    {
                        method : 'POST',
                        height : 280,
                        url : remotePathq + 'user/role/' + row.id,

。。。。。。

});

BUG:在没有清空IE缓存或者关闭IE重新打开,会出现查询数据为上次的缓存、历史数据,非即时数据:(其它firefox,谷歌浏览器正常)



原因:datagrid发送的'POST'请求地址一样,导致IE浏览器不会重新查询数据,而是从上次的缓存里直接获取历史数据;



2 :reload方法使用无效:

即$('#dg_user_table').datagrid('reload');不触发datagrid URL请求,数据没有更新;

原因:datagrid发送的'POST'请求地址一样,导致IE浏览器不会重新查询数据,而是从上次的缓存里直接获取历史数据;(同上)


II)解决办法:

对HTTP  RESTFUL服务地址加上唯一值随机数,区别每次加载的RESTFUL服务地址;

即:

var randomNu = (new Date().getTime()) ^ Math.random();

url : remotePathq + 'user/role/' + row.id+"?_="+randomNu,

修正后为:

var row = $('#dg_user_table').datagrid('getSelected');

var randomNu = (new Date().getTime()) ^ Math.random();

$('#dg_userPri_table').datagrid(
                    {
                        method : 'POST',
                        height : 280,
                        url : remotePathq + 'user/role/' + row.id+"?_="+randomNu,

。。。。。。

});

便可解决1  2 问题,使reload方法也可用;


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值