FineUI 官方论坛

标题: 表格的单元格编辑结束事件不触发 [打印本页]

作者: hcp    时间: 2016-7-18 11:18
标题: 表格的单元格编辑结束事件不触发
本帖最后由 hcp 于 2016-7-18 11:31 编辑

表格的单元格编辑结束事件afteredit, 只有在单元格内值改变后才触发, 如果只是进入单元格编辑状态, 然后不修改任何值退出编辑状态, 是不会触发这个事件的.
我是在做数据验证时发现这个问题的, 我需要在afteredit事件里验证表格中没有重复数据, 如果有重复, 就立即调用startEdit()方法, 强制重新进入编辑状态, 这时如果用户不做任何修改就结束编辑, afteredit事件不触发, 验证逻辑不执行,  表格内就产生了重复数据,  导致页面内的数据混乱.
请问, 这个问题有解决办法吗?

作者: sanshi    时间: 2016-7-18 16:26
afteredit 的意思:
单元格编辑完成时触发


所以如果值没有改变,则不会触发
作者: hcp    时间: 2016-7-18 16:43
sanshi 发表于 2016-7-18 16:26
afteredit 的意思:

那请问该如何阻止用户输入重复数据呢?
作者: sanshi    时间: 2016-7-19 08:58
hcp 发表于 2016-7-18 16:43
那请问该如何阻止用户输入重复数据呢?


输入数据候会触发afteredit事件,你不做任何操作当然不会触发了,可能我是没理解你的意思

请用空项目重现问题,发给专业版客服QQ
作者: hcp    时间: 2016-7-19 09:32
sanshi 发表于 2016-7-19 08:58
输入数据候会触发afteredit事件,你不做任何操作当然不会触发了,可能我是没理解你的意思

请用空项目重 ...

个人理解afteredit事件应该是单元格退出编辑状态...
而且要是能有个事件参数可以控制是否提交编辑就更nb了
作者: hcp    时间: 2016-8-18 17:52
sanshi 发表于 2016-7-19 08:58
输入数据候会触发afteredit事件,你不做任何操作当然不会触发了,可能我是没理解你的意思

请用空项目重 ...

[attach]9164[/attach]

我们碰到的问题如上图所示,需要判断“业务名称”是否重复,用户输入重复的名称后,第一次点击鼠标提交编辑时,触发了afteredit事件,我们的事件处理程序检测到了重复值,给出提示然后强制单元格重新进入编辑,此时用户再次点击鼠标提交编辑,afteredit事件不触发,重复数据就顺利提交了。

作者: sanshi    时间: 2016-8-18 17:55
hcp 发表于 2016-8-18 17:52
我们碰到的问题如上图所示,需要判断“业务名称”是否重复,用户输入重复的名称后,第一次点击鼠标提交 ...

单独把这个功能拿出来,放到空项目中实现。发给客服QQ




欢迎光临 FineUI 官方论坛 (https://fineui.com/bbs/) Powered by Discuz! X3.4