easyui的可编辑表格并不具备回车事件。这让edatagrid在结束编辑时的操作很麻烦,除非你点击其他行,或者点出表格否则不会取消编辑行。
为了让结束编辑操作更简单些,我为每个单元格添加了回车事件,当回车时结束本行编辑,具体做法是重写edatagrid的onDblClickCell事件,如下:
onDblClickCell : function(index, field, value) { if (opts.editing) { $(this).edatagrid('editRow', index); focusEditor(field); //以下是我添加的代码 var currentEdatagrid = $(this); $('.datagrid-editable .textbox,.datagrid-editable .datagrid-editable-input,.datagrid-editable .textbox-text').bind('keydown', function(e){ var code = e.keyCode || e.which; if(code == 13){ $(currentEdatagrid).datagrid('acceptChanges'); $(currentEdatagrid).datagrid('endEdit', index); } }); //添加代码结束 } if (opts.onDblClickCell) { opts.onDblClickCell.call(target, index, field,value); } },
也可以单独添加一个onEnterCell事件,在该事件中处理,灵活性更强。这样就可以调用onEnterCell:function(index){}。
以上这篇easyui-edatagrid.js实现回车键结束编辑功能的实例就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持呐喊教程。