jQuery MiniUI

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

datagrid renderer [复制链接]

Rank: 1

跳转到指定楼层
楼主
发表于 2016-1-19 16:21:31 |只看该作者 |倒序浏览
我在动态添加columns的时候,给其中的一个column增加了renderer的方法,
但是这个renderer的方法在同一行执行了2次,

请教一下如何只让renderer方法只执行一次?

我看官网的Dynamic Columns中也发现了这个问题,renderer中的函数会执行2次,这个问题可以解决吗?

Rank: 8Rank: 8

沙发
发表于 2016-1-19 16:36:22 |只看该作者
会执行多次,每行都会触发

Rank: 1

板凳
发表于 2016-1-19 16:38:11 |只看该作者
felt 发表于 2016-1-19 16:36
会执行多次,每行都会触发

我的意思是,我从后台获取到了10条数据,但是renderer的方法执行的次数是大于10次的(10的倍数),可能是20次,也可能是30次,等于说这每行的renderer方法都执行了1次以上。

有办法让每行的renderer方法只执行一次吗?

Rank: 8Rank: 8

地板
发表于 2016-1-19 16:45:08 |只看该作者
kisscacner 发表于 2016-1-19 16:38
我的意思是,我从后台获取到了10条数据,但是renderer的方法执行的次数是大于10次的(10的倍数),可能是 ...


如图,未发现调用多次

附件: 你需要登录才可以下载或查看附件。没有帐号?立即注册

Rank: 1

5#
发表于 2016-1-19 16:51:04 |只看该作者
felt 发表于 2016-1-19 16:45
如图,未发现调用多次

请问你是否只点击了一下“动态设置列”的按钮?

如果在点击一下,你会发现index+了20次,而不是第一下的10次。

请问如果多次动态生成列,要怎么处理呢?

Rank: 8Rank: 8

6#
发表于 2016-1-19 16:52:38 |只看该作者
kisscacner 发表于 2016-1-19 16:51
请问你是否只点击了一下“动态设置列”的按钮?

如果在点击一下,你会发现index+了20次,而不是第一下的 ...

重新生成,1清除原有内容,2重新生成新内容,就是每行2次

Rank: 1

7#
发表于 2016-1-19 17:09:32 |只看该作者
felt 发表于 2016-1-19 16:52
重新生成,1清除原有内容,2重新生成新内容,就是每行2次

那是不是等于这个renderer方法中不能去update grid中的数据?比如我在renderer中写了如下代码:
if(e.value==null){
    e.row.field = -1;
    grid.updateRow(e.row);
}


但他执行了两次,也就是说可能最终渲染出来的结果不是我想要的,那么请教一下这个时候我update的方法应该写在哪个事件中?

Rank: 8Rank: 8

8#
发表于 2016-1-19 17:21:01 |只看该作者
kisscacner 发表于 2016-1-19 17:09
那是不是等于这个renderer方法中不能去update grid中的数据?比如我在renderer中写了如下代码:
if(e.val ...

render肯定不能用update

Rank: 1

9#
发表于 2016-1-19 17:32:01 |只看该作者
felt 发表于 2016-1-19 17:21
render肯定不能用update

嗯,谢了~

Archiver|普加软件

GMT+8, 2024-10-7 22:26 , Processed in 1.087017 second(s), 11 queries .

Powered by Discuz! X2

© 2001-2011 Comsenz Inc.

回顶部