如何解决制表符:已编辑的单元格未显示在 table.getEditedCells() 中
我正在使用 Tabulator 来实现一个可编辑的表格,但我遇到了一个问题。
用户可以手动逐个编辑单元格(通过下拉菜单)或选择多个单元格并单击按钮将它们全部设置为相同的值。
然后,当用户完成编辑后,保存按钮可用并将所有内容发送回服务器。
保存按钮仅保存编辑过的单元格(由 table.getEditedCells()
访问)。
我的问题是通过按钮编辑的单元格(为多个单元格设置一个公共值)没有标记为已编辑,因此不存在于 table.getEditedCells()
列表中。 >
一些代码
起初,按钮通过更新单元格值
row.update({column:value});
但这并没有触发 cellEdited 回调。
我现在使用:
var cell = row.getCell("field");
cell.setValue(value);
fixEditedCells.push(cell);
cell.setValue
触发 cellEdited 回调(现在可以使用历史 table.undo()
撤消更改;我使用 update
时情况并非如此)
我的临时解决方法是将通过按钮修改的单元格存储在数组 (fixEditedCells
) 中,然后在保存时将其与 .getEditedCells() 合并...
感谢您的帮助!
解决方法
单元格只会被用户交互标记为编辑,而不是使用“setValue”函数。这是设计使开发人员可以更新表而无需用户将其注册为编辑。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。