首页 > 代码库 > JqueryEasyUI 解决IE下datagrid无法刷新的问题

JqueryEasyUI 解决IE下datagrid无法刷新的问题

 

问题描述:

 

在使用JqueryEasyUI 时,发现在IE下$(‘#table‘).datagrid(‘reload‘);无效,数据并没有被刷新,究其原因,是因为刷新时,datagrid请求的url没有变化,IE就从浏览器缓存里取数据了,返回的是302响应码。

 

解决办法:

 

在$(‘#table‘).datagrid(‘reload‘);前修改$(‘#table‘)的url,可以增加一个时间戳参数,修改代码像这样:

 

var url = $(‘#table‘).datagrid(‘options‘).url;

if (url.indexOf("_t=") > 0) {  

    url = url.replace(/_t=\d+/, "_t=" + new Date().getTime());  

else {  

    url = url.indexOf("?") > 0  

        ? url + "&_t=" + new Date().getTime()  

        : url + "?_t=" + new Date().getTime();  

}  

 

JqueryEasyUI 解决IE下datagrid无法刷新的问题