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实现回车键结束编辑功能的实例就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持脚本之家。
博客介绍了如何解决EasyUI的edatagrid在编辑时缺乏回车事件的问题,通过重写onDblClickCell事件并在单元格上添加回车键监听,实现了按下回车键即可结束当前行编辑的功能。这种方法增强了用户体验,使得编辑操作更加便捷。此外,还提出了可以单独定义onEnterCell事件以增强灵活性。
480

被折叠的 条评论
为什么被折叠?



