1

我已经成功实现了基于行用户选择的删除功能。删除是在ajax中调用服务器,所以为了体现变化,一旦删除操作成功结束,我就调用了著名的trigger("reloadGrid")。

事实上,我称之为“reloadGrid”的唯一原因是为了“删除”被删除的那一行,所以我在想,是否有办法在不调用 reload 函数的情况下“隐藏”被删除的行?

谢谢,

塔尔。

4

1 回答 1

1

我想该行将使用delGridRow方法删除。navGrid如果用户单击 的 Delete 按钮或 的 Delete 按钮,将使用该方法formatter: "actions"。该方法具有reloadAfterSubmit默认值为的选项true。如果您将其设置为,false则该行将在服务器和本地删除。在使用免费 jqGrid 的情况下,只需添加选项

formDeleting: { reloadAfterSubmit: false }

它将更改delGridRow网格方法的默认行为。

该方法的缺点:

  • 当前页面的行数可以少于最大行数。例如,如果您rowNum: 20在页面上(可能不是最后一个),那么它将在页面上仅显示 19 行。在大多数情况下,这不是一个真正的问题。用户可以按下下一页/上一页按钮或重新加载网格以获取整页。
  • 可能是其他用户使用来自另一台计算机的相同数据。在这种情况下,您可以在网格和后端显示的行之间存在差异。重新加载网格使网格状态变为现实。因此,您应该根据您的确切要求决定重新加载网格是否重要。
于 2015-03-27T15:55:00.597 回答