jquery easyui datagrid在进行初始化页面加载的时候,如何数据没有加载完毕,动态加载数据.
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了jquery easyui datagrid在进行初始化页面加载的时候,如何数据没有加载完毕,动态加载数据.相关的知识,希望对你有一定的参考价值。
可能问题描述的不够清楚,举个例子:
场景是这样的:如果现在从数据库查询出的总记录数是10000条数据,而在datagrid页面加载的时候,不可能一下子就把10000条数据全部加载出来,10000条没有完全加载,每次动态加载2000条,剩下的数据也会每次加载2000条,跟随滚动条的滚动动态加载。
这个问题困扰了很久,依然没有办法解决。求高人指点!
jQuery easyui datagrid 如何在动态增加了列之后进行刷新?
遇到的主要问题是首次页面加载的时候,我将参数附加到url后边了(如: url: 'student.action?'+ paramStr),后边paramStr串里边的参数的值发生变化,由于paramStr串定义为了全局变量,如果用$('#CC).datagrid(options)方法刷新页面,调用的参数是没有改变之前的,但是如果用$('#CC).datagrid('load', params); 进行数据的重载,则前台页面就没有刷新,真是纠结啊
谢谢各位朋友的帮助,问题已经解决了,还是用$('#CC).datagrid(options)方法进行页面表头和数据的双重刷新。
在options的定义时,最好用queryParams进行定义。
在每次页面刷新的时候,都要对queryParams参数值进行重新的定义,方式如下:
var queryParams = $('#indicatorDataTable').datagrid('options').queryParams;
queryParams = $.extend(queryParams,"title": value , "title": value );
$('#indicatorDataTable').datagrid('options').queryParams = queryParams;
$('#indicatorDataTable').datagrid(options);
$('#tt').datagrid(
columns:[[
field:'itemid',title:'Item ID',width:80,
field:'productid',title:'Product ID',width:80,
field:'listprice',title:'List Price',width:80,align:'right',
field:'unitcost',title:'Unit Cost',width:80,align:'right',
field:'attr1',title:'Attribute',width:100,
field:'status',title:'Status',width:60
]]
); 参考技术B 重新 reload数据,就会进行刷新追问
恩,reload是可以的,数据传输到了后台。但是前台还是没有刷新,我现在做的类似于报表的展示,可能需要加载不同的表头展示的,所以在刷新的同事,表头也是需要刷新的,否则展示不出来数据。
参考技术C 重新调用时改变一下url不行吗?$('#CC').datagrid(
url:'student.action?‘+新的参数
)追问
不行,采用$('#CC').datagrid(url:'student.action?‘+新的参数) 跟$('#CC).datagrid('load', params)方法是一个效果,参数倒是准确的传递到了后台,但是前台并没有刷新。
参考技术D $('#indicatorDataTable').datagrid(options);这个options没有定义呀,我现在想刷新datagrid,让单列排序恢复没有点击排序图标,相当于页面列头属性跟数据双重刷新,这个怎么弄呢?以上是关于jquery easyui datagrid在进行初始化页面加载的时候,如何数据没有加载完毕,动态加载数据.的主要内容,如果未能解决你的问题,请参考以下文章
jquery easyui datagrid在进行初始化页面加载的时候,如何数据没有加载完毕,动态加载数据.