jQuery MiniUI

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

ondrawsummarycell会被执行两次 [复制链接]

Rank: 3Rank: 3

跳转到指定楼层
楼主
发表于 2017-2-12 21:33:07 |只看该作者 |倒序浏览
在datagrid里加入ondrawsummarycell属性,grid.load()加载数据,ondrawsummarycell里的代码会被执行两次,第一次取不到e.result里的自己传递的参数,第二次加载时才取得到e.result里的自己传递的参数。是否为BUG,之前的版本没有发现这个问题

Rank: 8Rank: 8

沙发
发表于 2017-2-13 10:39:52 |只看该作者
ondrawsummarycell按列触发,每个单元格都会触发一次
另外本地测试了每次都可以获取e.result的数据

Rank: 3Rank: 3

板凳
发表于 2017-2-13 11:05:54 |只看该作者
本帖最后由 veryfine 于 2017-2-13 11:20 编辑
felt 发表于 2017-2-13 10:39
ondrawsummarycell按列触发,每个单元格都会触发一次
另外本地测试了每次都可以获取e.result的数据 ...

对,每个列都会触发,但每个列都会触发两次,第一次每个列触发,result为空,第二次每个列触发result不为空

如果注释掉grid.load(data),ondrawsummarycell也会触发执行,即表格显示时触发一次,本次没有e.result,grid.load(data)时再触发一次,本次有e.result


我使用的是3.7 2016-12-20版本
附件: 你需要登录才可以下载或查看附件。没有帐号?立即注册

Rank: 8Rank: 8

地板
发表于 2017-2-13 12:08:41 |只看该作者
veryfine 发表于 2017-2-13 11:05
对,每个列都会触发,但每个列都会触发两次,第一次每个列触发,result为空,第二次每个列触发result不为 ...

如果你前面没有加载过不会触发,空表格不会触发ondrawsummarycell

Rank: 3Rank: 3

5#
发表于 2017-3-18 17:48:51 |只看该作者
felt 发表于 2017-2-13 12:08
如果你前面没有加载过不会触发,空表格不会触发ondrawsummarycell

表格指定了URL,但没有在JS里执行grid.load()时确实会触发一次ondrawsummarycell,这次执行的result为空对象,当调用一次grid.load()后,ondrawsummarycell会再执行一次,这次执行的result有内容,如

Rank: 8Rank: 8

6#
发表于 2017-3-20 10:57:02 |只看该作者
veryfine 发表于 2017-3-18 17:48
表格指定了URL,但没有在JS里执行grid.load()时确实会触发一次ondrawsummarycell,这次执行的result为空 ...

那你应该可以判断一次当result有内容的,时候才执行你要处理的操作.
if(e.result){
   e.cellHtml=...
}

Archiver|普加软件

GMT+8, 2024-5-6 19:05 , Processed in 1.035218 second(s), 10 queries .

Powered by Discuz! X2

© 2001-2011 Comsenz Inc.

回顶部