限制用户在jqgrid中选择下一行

时间:2016-09-07 06:56:06

标签: jqgrid

我在我的项目中使用 jqgrid 。我要求当用户选择行点击内联工具栏控件的编辑按钮时之后修改单元格中的任何数据,而不是单击内联工具栏控件用户单击(选择)当时任何其他行的保存按钮。我想显示用户消息

  

想要保存/放弃修改后的数据

如果用户单击消息对话框的保存按钮,则保存数据,否则丢弃数据。所以请告诉我如何实现它。直到用户不要点击保存或丢弃按钮不会选择用户点击的下一行

1 个答案:

答案 0 :(得分:2)

首先,您应该使用restoreAfterSelect: false的{​​{1}}选项(如果您使用inlineNav)。您可以使用inlineNav来实现所需的行为,并根据用户的选择来调用beforeSelectRowsaveRow

restoreRow的最简单实现可能如下:

beforeSelectRow

我上面使用了beforeSelectRow: function (rowid) { var $self = $(this), savedRowInfos = $self.jqGrid("getGridParam", "savedRow"), editingRowId = savedRowInfos == null || savedRowInfos.length < 1 ? null : savedRowInfos[0].id; if (editingRowId != null && editingRowId !== rowid) { if (confirm("Do you want to save the changes?")) { $self.jqGrid("saveRow", editingRowId); } else { $self.jqGrid("restoreRow", editingRowId); } } } 方法。您可以在the demo上看到工作代码。

或者,可以使用jQuery UI对话框创建异步对话框。然后confirm的代码可能如下:

beforeSelectRow

相应的演示是here