这篇文章给大家带来dhtmlxGantt的输入值验证。
在 Grid 中编辑单元格时可能会出错。
为避免保存不正确的值,您需要在关闭编辑器之前验证输入值。它可以通过以下两种方式之一实现:
- 通过自定义编辑器对象的is_valid方法
- 通过inlineEditors 对象的onBeforeSave事件
让我们考虑启用验证时编辑器的行为。
例如,您通过鼠标指针在 Grid 单元格中打开了编辑器。以下方法将适用于您的进一步行动:
- 编辑单元格后按 Escape 将关闭编辑器而不保存任何更改。
- 如果该值有效,按 Enter 将确认并关闭编辑器,否则将丢弃输入的值。
- 在编辑单元格时按 Tab 或使用鼠标指针将保存有效值并将焦点移动到另一个单元格,而无效值将被重置并关闭编辑器。
防止编辑器关闭
启用编辑器验证后,甘特图不会保存错误的输入值,而是重置它们并关闭编辑器。因此,您需要打开单元格并再次更改值。
防止编辑器关闭的一个好方法是弹出一个警告框,让用户有机会修复不正确的值。为此,您需要使用自定义键盘映射,如下所示:
function editAnotherCell(inlineEditors){ var value = inlineEditors.getValue(); if(confirm(`does '${value}' look ok to you?`)){ inlineEditors.save(); } } var m