[英]jQgrid : Disable inline Save and Esc Handler while editing grid Row?
我正在开发一个使用jQgrid生成表数据的asp.net MVC 4项目。在生成的网格中,我为行中的特定列提供了内联编辑选项。
我的问题就像在编辑特定行时,如果按Enter
或Esc
键,我选择的行将退出编辑模式。
我想禁用这些事件Enter和Esc。
我用谷歌搜索了这个问题,并得到了一些有趣的帖子如何在编辑时在Jqgrid上禁用Save Handler
在上面的参考文章中,我可以看到Jqgrid.src.js
文件中的某些行被注释掉了,我认为这不是最好的解决方案。
还有其他方法可以让我在进行内联编辑时同时禁用Jqgrid中的Enter
和Esc
Event。
Javascript代码
jQuery("#Grid").jqGrid({
url: baseUrl + '/api/Controller/method',
datatype: "json",
mtype: "POST",
colNames: ['Col1', 'Col2', 'Col3', 'Col4', 'Col5'],
colModel: [
{ name: 'col1', index: 'col1', align: 'center', editable: true, key:true },
{ name: 'col2', index: 'col2', align: 'center' },
{ name: 'col3', index: 'col3', align: 'center', editable: true, key:true },
{ name: 'col4', index: 'col4', align: 'center' },
{ name: 'col5', index: 'col5', align: 'center', editable: true, key:true }
],
jsonReader: {
root: 'data',
id: 'col2',
repeatitems: false
},
pager: $('#Pager'),
rowNum: 10,
rowList: [10, 25, 50, 100],
autowidth: true,
shrinkToFit: false,
viewrecords: true,
loadonce: true,
autoencode: true,
multiselect: true,
height: '100%',
width: '100%',
caption: "Record"
});
样本网格结构
注意:显示的网格图像不是使用以上代码生成的实际网格。
在上面的网格中,有些列是可编辑的。我的情况就像我想将数据放在每一行的所有可编辑列中,这样我就可以通过单击网格下方的按钮来将网格数据更新到服务器(Button上图中未显示)。这里我没有使用grid的editUrl属性。
目前,如果我编辑第一行,并且如果不小心按下Enter键或Esc键,则所选行将变为不可编辑状态。我想将一行中的所有可编辑单元格保持可编辑状态,直到我按下位于网格下方的Submit按钮。
我的jQgrid版本是4.5.4
任何帮助表示赞赏。
对于不包含JavaScript代码或使用的jqGrid版本没有确切引用的问题,很难回答。 您没有描述在网格中使用哪种形式的内联编辑。
内联编辑期间, Esc和Enter的用法可以通过以下keys: true
进行管理keys: true
选项。 使用keys
选项的确切语法取决于您如何使用内联编辑。 例如,您可以直接调用editRow或使用其他方法mile inlineNav或格式化程序:“ actions”为您调用editRow
。 keys
选项的默认值已经为false
,因此您可以将代码中的某个位置的值更改为true
。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.