JQGRID,过滤后获取所有行

过滤JQgrid后,我无法获得所有行{paginated}。 我试过了

> var myData = grid.jqGrid('getGridParam', 'data'); var myData = grid.jqGrid('getRowData'); 

但第一个选项提供所有行,这些是未过滤的行。 第二个返回过滤的行,但只返回第一页。

在小提琴示例中,如果您在客户端列中键入test,则有6个过滤结果,但第一个选项返回所有7个记录,第二个选项仅返回5个记录{即仅从第一页}。 我需要显示6个过滤记录。 结果记录在控制台中。

这是小提琴

问题的解决方案取决于您使用的网格分叉。 免费的jqGrid是基于jqGrid 4.7的分支(有关其他信息,请参阅自述文件和wiki )。 当前版本的免费jqGrid是4.9。

免费的jqGrid支持lastSelectedData参数,您可以使用该参数而不是data来获取所需的信息。 看演示 。

如果你必须使用旧的jqGrid版本并且无法将其更新为免费的jqGrid,那么你可以按照答案 。 它显示了如何“子类化” $.jgrid.from的内部$.jgrid.from类的select方法。 在子类化之后,可以访问所需的信息。