jquery - jqGrid 不保存内联行编辑

标签 jquery jqgrid

我正在 ASP.NET MVC 4 网站、jQuery 1.7.2 中使用 jqGrid 4.3.2。应用程序中有几个地方使用了jqGrid。我现在的一般设置是,所有编辑都是通过内联导航和编辑在本地完成(loadonce: trueclientArray),并且所有网格数据都以表单形式发布到服务器通过 AJAX 调用提交。我在行编辑以及它们在哪些事件中提交时遇到了一些困难。您可以查看该站点(以及源代码、正在进行的全部工作,请友善)here 。如果您添加或编辑一行,然后单击页面上的其他位置,则不会保存行编辑。用户必须在行编辑期间按回车键才能保存该行。

我在 this question 中对此进行了一些讨论。 ,其中 Oleg很友善地回答。除了按下回车键(例如当行失去焦点时)之外,是否有其他方法可以提交行编辑?

最佳答案

您可以执行以下操作:

  1. 首先,您必须设置 inlineNavrestoreAfterSelect: false 选项。我发现该选项没有记录,但您可以在 the source code 中看到它。如果没有设置,inlineNav 使用 beforeSelectRow 调用 restoreRow(请参阅 here)。
  2. onSelectRow 内部(请参阅 the answer 中的代码)或 beforeSelectRow 内部实现上一个编辑行的保存。可能 beforeSelectRow 的使用会更容易,因为需要保存的最后一个编辑行可能只是您可以从 selrow 选项获取的最后选定的行,因为beforeSelectRow 内部的值尚未更改。

关于jquery - jqGrid 不保存内联行编辑,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11021992/

相关文章:

jquery - JqG​​rid的Row默认选中

asp.net-mvc-3 - 在JqGrid中显示日期时间../Date(1352658600000)/

javascript - 选择一个 div 会像单选按钮一样取消选择其他 div?

javascript - $(document).ready() 处理程序立即触发

javascript - jQuery 从 HTML 解析 JSON 不起作用

jquery - 需要改变jqgrid的位置

javascript - jqGrid GridUnload/GridDestroy

javascript - 将表格 td 乘以输入

javascript - 取消选择滚动开始时的所有 ListView 元素

javascript - 加快 JQGrid 在 GridComplete 上突出显示行的速度