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

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

WBOY
WBOYOriginal
2016-06-07 15:26:271400browse

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, 。。。

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,谷歌浏览器正常)

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


原因: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方法也可用;


Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn