【问题标题】:Free jqGrid 4.8.0 - hidding the row in a grid after delete without reload免费 jqGrid 4.8.0 - 删除后隐藏网格中的行而不重新加载
【发布时间】:2015-03-27 14:06:07
【问题描述】:

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

事实上,我称之为“reloadGrid”的唯一原因是为了“删除”被删除的那一行,所以我在想,如果有一种方法可以“隐藏”被删除的行而不调用重新加载函数?

谢谢,

塔尔。

【问题讨论】:

  • 我认为唯一的方法是使用 jquery/javascript 从 dom 中隐藏元素。如果您使用dataType:local,则操作将仅在客户端执行。

标签: jquery jqgrid free-jqgrid


【解决方案1】:

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

formDeleting: { reloadAfterSubmit: false }

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

该方法的缺点:

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

【讨论】:

    猜你喜欢
    • 2015-08-20
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-08-16
    • 1970-01-01
    相关资源
    最近更新 更多