编辑我的网格时,如果在网格外点击,我编辑的框仍然可编辑。如何让已编辑的单元格在焦点丢失时“完成”编辑?Slickgrid - 丢失焦点结束编辑
9
A
回答
14
以下代码将保存当前编辑。
Slick.GlobalEditorLock.commitCurrentEdit();
你需要把它放在你认为应该触发保存的事件处理程序中。例如,如果您使用的示例文本编辑器插件,我相信一个editor-text
CSS类添加到那个时候,您正在编辑一个细胞产生的输入字段,因此这样的事情应该工作:
$('#myGrid').on('blur', 'input.editor-text', function() {
Slick.GlobalEditorLock.commitCurrentEdit();
});
6
我发现我需要换CLAV的处理程序超时:使用键盘导航时
Uncaught NotFoundError: An attempt was made to reference a Node in a context where it does not exist.
:
$("#myGrid").on('blur', 'input.editor-text', function() {
window.setTimeout(function() {
if (Slick.GlobalEditorLock.isActive())
Slick.GlobalEditorLock.commitCurrentEdit();
});
});
,以避免类似的错误。据推测,新的模糊处理程序在SlickGrid可以执行自己的处理之前触发,这会导致问题。
4
不幸的是,可能是由于事件处理的不同,Grame的版本在chrome中打破了键盘导航。 为了解决这个问题,我又增加了支票只能提交编辑,如果新的焦点内容是不是在网格内其他编辑器元素(如键盘导航的结果):
$('#grid').on('blur.editorFocusLost', 'input.editor-text', function() {
window.setTimeout(function() {
var focusedEditor = $("#grid :focus");
if (focusedEditor.length == 0 && Slick.GlobalEditorLock.isActive()) {
Slick.GlobalEditorLock.commitCurrentEdit();
}
});
});
这似乎在当前工作Firefox,Chrome和IE等版本。
相关问题
- 1. slickgrid焦点丢失时删除活动单元格
- 2. EditText焦点丢失
- 3. Javafx:TableCell焦点丢失
- 4. 丢失焦点退出编辑文本并保存状态
- 5. Ubuntu不时会丢失文本编辑器的焦点
- 6. 如何从文本编辑对象中检测焦点丢失?
- 7. Android EditText丢失焦点TabChange
- 8. jQuery mouseenter丢失焦点
- 9. 图像丢失OpenWYSIWYG编辑器,代码点火器结构
- 10. 重点获得和焦点丢失Java
- 11. gwt中可编辑组合框的值不会更新,直到焦点丢失
- 12. Mediawiki编辑器reftoolbar丢失?
- 13. Drupal编辑工具丢失
- 14. android编辑文本焦点
- 15. 编辑文本焦点
- 16. TinyMCE的 - 在编辑焦点
- 17. c#检测应用程序的焦点丢失焦点
- 18. 从丢失的焦点设置元素的焦点
- 19. OverlayItem在FragmentActivity关闭时丢失焦点
- 20. Formbox焦点丢失在颜色盒
- 21. Tkinter焦点丢失后询问
- 22. Tkinter - 窗口丢失焦点事件
- 23. 输入时输入丢失焦点
- 24. 焦点丢失IPleaseWaitService使用Catel
- 25. Delphi应用程序丢失焦点
- 26. MS Access - 关于丢失焦点计算
- 27. DevExpress XtraGrid丢失焦点更新
- 28. JavaFx TextField焦点丢失格式化
- 29. WPF边框丢失焦点事件
- 30. C#文本框焦点丢失
我可能会错过这里的东西。从理论上讲,这是有效的 - 因为如果我将它添加到萤火虫控制台中,然后获得焦点并失去焦点,它就会一次起作用。但在代码中,即使在document.ready中,它也不起作用:\ – sunzyflower 2013-03-20 15:21:48
我的错误是,模糊示例不起作用,因为输入字段是动态添加的。您需要使用'on'来绑定事件。我更新了这个例子,尝试一下。 – clav 2013-03-20 16:07:24
我收到以下错误: 类型错误:。jQuery的(...)上不是一个函数 [打破这个错误] \t 的jQuery( '#myGrid')上( '模糊',“输入.editor-text',function(){ – sunzyflower 2013-03-20 20:06:13