如果您想为内联编辑定义一些常用设置,我建议您使用$.jgrid.inlineEdit
. 例如
$.extend($.jgrid.inlineEdit, { keys: true });
在这种情况下,您将以任何形式的内联编辑使用Enter键工作。在每个格式化程序激活内联编辑的情况下:“操作”的工作方式与添加和编辑按钮相同。inlineNav
或者,您必须inlineNav
通过以下方式为“添加行”按钮的选项指定特殊
$("#myGrid").jqGrid("inlineNav", "#pager", {
editParams: { keys: true },
addParams: { addRowParams: { keys: true } }
});
通常在一个对象中定义所有内联编辑选项并使用相同的选项对象两次:
var editingOptions = { keys: true };
$("#myGrid").jqGrid("inlineNav", "#pager", {
editParams: editingOptions,
addParams: { addRowParams: editingOptions }
});
有关更多代码示例,请参见答案。
更新:我想我找到了你一开始在 Add 操作期间使用但后来工作的原因。原因是我在刚刚发布的错误报告中描述的错误。您可以尝试使用固定版本(您可以在此处获取)。原因是keys: false
keys: false
jquery.jqGrid.src.js
inlineNav
有一个错误:即使我们取消“添加”操作,它也总是editParams
在“取消”事件处理程序内部使用(见行)。所以该方法restoreRow
被editParams
作为参数调用。
- 下一个错误是更改行而不是仅使用它。要修复错误,必须更改行
restoreRow
$.jgrid.inlineEdit
o = $.extend(true, $.jgrid.inlineEdit, o );
到
o = $.extend(true, {}, $.jgrid.inlineEdit, o);