layui 框架 table插件 实现键盘快捷键 切换单元格编辑
// 使用方法: //1.在需要启用此功能的页面中table done回调函数中插入。 //2.修改源代码,在源代码中直接插入,此方法就不需要在每一个页面的table done回调函数中 插入。 //注:单元格必须开启了 edit:text 模式,才支持键盘切换。 $(document).on(keydown, .layui-table-edit, function(e) { var td = $(this).parent(td), tr = td.parent(tr), trs = tr.parent().parent().find("tr"), tr_index = tr.index(), td_index = td.index(), td_last_index = tr.find([data-edit="text"]:last).index(), td_first_index = tr.find([data-edit="text"]:first).index(); switch (e.keyCode) { case 13: //enter case 39: //右 td.nextAll([data-edit="text"]:first).click(); if (td_index == td_last_index) { tr.next().find(td).eq(td_first_index).click(); if (tr_index == trs.length - 1) { trs.eq(0).find(td).eq(td_first_index).click(); } } setTimeout(function() { $(.layui-table-edit).select() }, 0); break; case 37: //左 td.prevAll([data-edit="text"]:first).click(); setTimeout(function() { $(.layui-table-edit).select() }, 0); break; case 38: //上 tr.prev().find(td).eq(td_index).click(); setTimeout(function() { $(.layui-table-edit).select() }, 0); break; case 40: //下 tr.next().find(td).eq(td_index).click(); setTimeout(function() { $(.layui-table-edit).select() }, 0); break; } });
下一篇:
unity 我用到的序列号字段