找回密码
 立即注册

QQ登录

只需一步,快速开始

德州李先生

注册会员

16

主题

36

帖子

180

积分

注册会员

积分
180
德州李先生
注册会员   /  发表于:2022-7-19 17:07  /   查看:2283  /  回复:9
1金币
自定义单元格里面放的InputDate和InputNumber,编辑后走cellEditEnding方法,但是找不到输入值,请问如何在编辑后获取到行列数和编辑值呢

最佳答案

查看完整内容

你的demo中前三列都是正常,只有最后一列是自定义了Cell和CellEdit,没法同步编辑器和单元格值,我看写的也不太对, 修改如下 然后重现了你说的无法获取到编辑后的值,但是这个目前测试的情况是通过s.activeEditor.value只能获取到input编辑前的值(对wijmo输入控件或者默认编辑器可以获取到新值) 解决办法是还是用cellEditEnded方法 flexGrid.cellEditEnded.addHandler((s, e) => { let newValue = s.getCe ...

9 个回复

倒序浏览
最佳答案
最佳答案
Richard.Ma讲师达人认证 悬赏达人认证 SpreadJS 开发认证
超级版主   /  发表于:2022-7-19 17:07:40
来自 8#
你的demo中前三列都是正常,只有最后一列是自定义了Cell和CellEdit,没法同步编辑器和单元格值,我看写的也不太对,

修改如下

  1. <wj-flex-grid-column
  2.           v-if="citem.cFieldType == 'text'"
  3.           :header="citem.cFieldTitle"
  4.           :binding="citem.cFieldName"
  5.         >
  6.           <wj-flex-grid-cell-template cellType="Cell" v-slot="cell">
  7.             {{ cell.item.text }}
  8.           </wj-flex-grid-cell-template>
  9.           <wj-flex-grid-cell-template cellType="CellEdit" v-slot="cell">
  10.             <input v-model="cell.value" type="text" style="display: inline" />
  11.           </wj-flex-grid-cell-template>
  12.         </wj-flex-grid-column>
  13.         <wj-flex-grid-column
  14.           v-if="citem.cFieldType == 'date'"
  15.           :binding="citem.cFieldName"
  16.           :header="citem.cFieldTitle"
  17.         >
  18.         </wj-flex-grid-column>
复制代码

然后重现了你说的无法获取到编辑后的值,但是这个目前测试的情况是通过s.activeEditor.value只能获取到input编辑前的值(对wijmo输入控件或者默认编辑器可以获取到新值)

解决办法是还是用cellEditEnded方法

  flexGrid.cellEditEnded.addHandler((s, e) => {
    let newValue = s.getCellData(e.row, e.col);
    let oldValue = e.data;

      console.log(newValue);
      console.log(oldValue);

  });


回复 使用道具 举报
Richard.Ma讲师达人认证 悬赏达人认证 SpreadJS 开发认证
超级版主   /  发表于:2022-7-19 18:20:14
2#
你现在是找不到输入值,还是说输入值没有变化,我测试了一下,能获取到,但是获取的是编辑前的值,包括使用cellEditEnded也是获取到的编辑前的值,不知道和你那边情况是否相同

https://www.grapecity.com/wijmo/ ... ustomEditors/purejs
回复 使用道具 举报
德州李先生
注册会员   /  发表于:2022-7-20 09:10:04
3#
Richard.Ma 发表于 2022-7-19 18:20
你现在是找不到输入值,还是说输入值没有变化,我测试了一下,能获取到,但是获取的是编辑前的值,包括使用 ...

这边是想用wijmo做单据,需要每一格都能编辑并且获取编辑后的值以便存储,现在cellEditEnded方法调用了但是在里面找不到编辑后的值,或者有其他方法在编辑完成后获取编辑后的值也可以,目前参考的是下面的连接https://demo.grapecity.com.cn/wijmo/demos/Grid/Editing/EditingEvents/purejs
回复 使用道具 举报
Richard.Ma讲师达人认证 悬赏达人认证 SpreadJS 开发认证
超级版主   /  发表于:2022-7-20 09:56:00
4#
这里用的是cellEditEnding,然后去取 的s.activeEditor.value,由于是一个ing事件,发生在仍未退出编辑状态时,因此编辑器的值是可以获取的,这个demo我看也没有问题,你现在如果是cellEditEnding无法获取到activeEditor.value的话,请上传一个demo我看看
回复 使用道具 举报
德州李先生
注册会员   /  发表于:2022-7-23 16:11:41
5#
Richard.Ma 发表于 2022-7-20 09:56
这里用的是cellEditEnding,然后去取 的s.activeEditor.value,由于是一个ing事件,发生在仍未退出编辑状态 ...

您好,做了个demo,敬请查看,分了四种情况,有的确实可以看到编辑值了,有的还是获取不到值

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
回复 使用道具 举报
Richard.Ma讲师达人认证 悬赏达人认证 SpreadJS 开发认证
超级版主   /  发表于:2022-7-25 09:29:02
6#
收到,验证后给你回复
回复 使用道具 举报
德州李先生
注册会员   /  发表于:2022-7-26 10:23:47
7#
Richard.Ma 发表于 2022-7-25 09:29
收到,验证后给你回复

demo有查看吗,什么时候可以解决啊
回复 使用道具 举报
德州李先生
注册会员   /  发表于:2022-7-27 14:04:02
9#
Richard.Ma 发表于 2022-7-26 14:37
你的demo中前三列都是正常,只有最后一列是自定义了Cell和CellEdit,没法同步编辑器和单元格值,我看写的也 ...

收到,此法可行
回复 使用道具 举报
Richard.Ma讲师达人认证 悬赏达人认证 SpreadJS 开发认证
超级版主   /  发表于:2022-7-27 15:51:46
10#
好的,问题解决就行
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 立即注册
返回顶部