jQuery MiniUI

 找回密码
 立即注册
查看: 3117|回复: 3
打印 上一主题 下一主题

datagrid 列渲染问题 [复制链接]

Rank: 3Rank: 3

跳转到指定楼层
楼主
发表于 2012-12-23 09:43:19 |只看该作者 |倒序浏览
我的页面上有个列表,是用datagrid进行展示的,但是其中一些列的渲染需要从后台进行取数据,这个操作应该如何实现呢?比如:我的列表上有员工姓名这一列,但是,我在后台sql查询的时候只有员工ID,需要从后台员工表中进行查询员工的姓名,不知道怎么通过员工ID从后台去数据,因为页面上有很多的列的数据都是这种情况,所以,有没有提供什么比较好的例子或者方法?我曾经用grid.load方法,在加载grid数据的时候顺便把员工的信息也加载了进来,用drawcell事件进行的渲染,问题是:drawcell发生在load方法之后,无法成功。。。

Rank: 9Rank: 9Rank: 9

沙发
发表于 2012-12-23 09:50:06 |只看该作者
这样情况是非常常见的,你千万不要在drawcell事件中,不停用ajax加载数据。
应该:在后台加载表格数据的时候,进行SQL关联查询,根据员工ID找出员工Name,比如:EmployeeName
然后,在前台的列设置field="Id" displayField="EmployeeName"

Rank: 3Rank: 3

板凳
发表于 2012-12-23 09:58:52 |只看该作者
niko 发表于 2012-12-23 09:50
这样情况是非常常见的,你千万不要在drawcell事件中,不停用ajax加载数据。
应该:在后台加载表格数据的时 ...

我是这样考虑的,如果我能把渲染的操作放到前台来是不是会减小服务器的压力,因为这个表格的很多列都要这样的渲染,能不能再请求后台数据的时候,把要渲染的数据信息放入一个地方在前台进行接收下进行渲染,。。。。?

Rank: 3Rank: 3

地板
发表于 2012-12-23 10:02:01 |只看该作者
test 发表于 2012-12-23 09:58
我是这样考虑的,如果我能把渲染的操作放到前台来是不是会减小服务器的压力,因为这个表格的很多列都要这 ...

grid1.load({},function successF(text){
                data2 = text.data2;
                },function errorF(){mini.alert('数据加载错误')});我用这样的方法获得了后台需要渲染的数据,比如员工姓名的集合,那么怎么对datagrid进行渲染呢?datagrid的所有事件好像都是发生在这个方法之前,无法进行渲染的、、、、、、?

Archiver|普加软件

GMT+8, 2024-11-27 09:43 , Processed in 1.044245 second(s), 9 queries .

Powered by Discuz! X2

© 2001-2011 Comsenz Inc.

回顶部