easyui datagrid加载超时
2016-04-08 16:56:00
1147533288
原创
3653
问题描述:
查询页面使用easyui1.3/1.4的datagrid表格展示数据,因后台数据查询较慢,超时20s后谷歌浏览器自动cancel,导致页面grid无数据展示.
定位原因如图:
[caption id="attachment_90" align="alignnone" width="300"] post请求超时自动取消,导致datagrid无数据展示[/caption]
问题分析:
datagrid中无类似ajax属性(timeout),但是datagrid是通过ajax请求提交数据的,将jquery.datagrid.js中相应ajax请求方法改成同步请求加载/设置大一点的超时时间解决。
解决办法:
修改easyui/plugins/jquery.datagrid.js,搜索$.ajax,定位至1986行
$.ajax({type:opts.method,url:opts.url,data:_203,dataType:"json",success:function(data){
对应增加同步获取数据,修改如下
$.ajax({type:opts.method,url:opts.url,async:false,data:_203,dataType:"json",success:function(data){
或者
$.ajax({type:opts.method,url:opts.url,async:true,timeout:600000,data:_203,dataType:"json",success:function(data){
_204(data);
重新刷新页面问题解决!