jqGrid exposes a property rowNum
where you can set the number of rows to display for each page. How do you set the grid to just display ALL rows?
Right now I'm just setting the rowNum
to something really high like <%= int.MaxValue %>
but I'm wondering if there is a better way.
Even if it still appears in the doc that you cannot set rowNum to -1 as of jqGrid 4.5.4 it works again (maybe in earlier version too).
setting
rowNum:-1
did the trick for meIf you have set the pagination on the navbar, you can also access to the total number of rows written on the right-bottom of the grid and then append to the generated RowList option.
Do something like :
resolved it with simple change: rowNum: inputDataArray.length
where inputDataArray is the array that I am providing to the Grid.
In the latest version of jqGrid, you can set rowNum to -1 to instruct the grid to always display all rows:See the latest jqGrid documentation here.
Specifically:
Update
Unfortunately this behavior was broken in jqGrid 3.6.3. According to this post from Tony:
So the jqGrid developers are aware of this problem and apparently are planning to fix it in a future release. Unfortunately this post was from over a year ago...
At this time, all I can recommend is that you set
rowNum
to a very large number to simulate the behavior of-1
.You can also try whatispunk's solution below of using
rowNum: ''
. However, I tried this on a grid containing local data (loadonce: true
). When attemping to sort the rows all of the grid's local data would disappear. So this solution does not seem to work for grids with local data, unless this defect has been fixed in a later version of jqGrid (I tested it on jqGrid 3.8.2). If you have feedback, please post a comment below!Update - April 16, 2014
According to the jqGrid team this is now fixed:
I have not had a chance to test to confirm the fix, though. Presumably this change will be in the next release after jqGrid 4.6.0.
This works: