如何在不重新加载网格的情况下将行添加到下一页的 jqGrid?
How to add row to a jqGrid in next page without reloading the grid?
目前我试过如下:
var rows=$("#mygrid").getGridParam("records");
('#myggrid').addRowData(行+1, mydata, 'last');
网格的默认行数设置为 5。此外,它还实现了服务器端分页。现在,我有一个用例,可以在用户向服务器发送请求时添加行。我使用上面的代码添加了行。但问题是这些行会无限期地添加到同一页面的网格中。因此,页面变得非常长,包含所有行。我需要在不重新加载网格的情况下将行添加到下一页,因为每次重新加载都会进行 ajax 调用,这又会进行数据库读取操作。
确切地说,不可能按您的要求去做。原因很容易理解,如果你考虑一下,显示的页面包含行(在你的例子中是 5 行)基于当前排序顺序。因此,添加的行可能根本不会显示在页面上,或者 other 行可能会在插入新行后显示(将不显示一行,而显示另一行 - 的将在当前页面上显示的行 之前 插入行)。或者,插入的行可以显示在页面上,但位于页面中间的某个位置。只有服务器可以访问完整的行集,因此如果您需要显示所选页面的确切内容,您必须从服务器重新加载页面。
目前我试过如下:
var rows=$("#mygrid").getGridParam("records"); ('#myggrid').addRowData(行+1, mydata, 'last');
网格的默认行数设置为 5。此外,它还实现了服务器端分页。现在,我有一个用例,可以在用户向服务器发送请求时添加行。我使用上面的代码添加了行。但问题是这些行会无限期地添加到同一页面的网格中。因此,页面变得非常长,包含所有行。我需要在不重新加载网格的情况下将行添加到下一页,因为每次重新加载都会进行 ajax 调用,这又会进行数据库读取操作。
确切地说,不可能按您的要求去做。原因很容易理解,如果你考虑一下,显示的页面包含行(在你的例子中是 5 行)基于当前排序顺序。因此,添加的行可能根本不会显示在页面上,或者 other 行可能会在插入新行后显示(将不显示一行,而显示另一行 - 的将在当前页面上显示的行 之前 插入行)。或者,插入的行可以显示在页面上,但位于页面中间的某个位置。只有服务器可以访问完整的行集,因此如果您需要显示所选页面的确切内容,您必须从服务器重新加载页面。