jQuery UI Widgets › Forums › Grid › Grid Server Paging totalrecords has no effect
Tagged: jqxGrid ;, MVC, server paging
This topic contains 4 replies, has 2 voices, and was last updated by aleidenfrost 5 years, 8 months ago.
-
Author
-
Hi all,
I used the example at https://www.jqwidgets.com/jquery-widgets-documentation/documentation/asp.net-integration/asp.net-grid-server-side-paging.htm to build a grid with server paging but there is a problem: even though I set the totalrecords in beforeprocessing (and the number is set to 1000, I checked in the debugger), the grid says it shows 10 out of 10 total records and there effectively is no paging. The data it shows is the correct data, just the totalrecords seems to have no effect.
What am I doing wrong? Everything is set up like in the example:
$(document).ready(function () { var dataSource = { datatype: "json", datafields: [ { name: 'ID', type: 'int' }, { name: 'Date', type: 'date' }, { name: 'Name', type: 'string' } ], url: 'Controller/GetData', root: 'Rows', cache: false, beforeprocessing: function (data) { dataSource.totalRecords = data.TotalRows; } }; var dataAdapter = new $.jqx.dataAdapter(dataSource); $("#dispalRingGrid").jqxGrid({ source: dataAdapter, pageable: true, virtualmode: true, columnsresize: true, columnsreorder: true, rendergridrows: function () { return dataAdapter.records; }, columns: [ { datafield: 'ID' }, { datafield: 'Date', type: 'date' }, { datafield: 'Name', type: 'string' } ] }); });
Hello aleidenfrost,
When you use the
virtualmode
it is important to create a correct implementation of its following callback –rendergridrows
.
Please, try to implement the “rendergridrows”:virtualmode: true, rendergridrows: function (obj) { return obj.data; }
As it is in the mentioned tutorial.
Best Regards,
Hristo HristovjQWidgets team
https://www.jqwidgets.comHi Hristo,
thanks, but that’s what I tried first, following the tutorial. When that didn’t work I looked around for other examples; I got passing the adapter records in the rendergridrows method there.
Both options don’t work.Is there some additional option I have to set for GridView to recognize totalrecords?
Hello aleidenfrost,
I would like to ask you – is there any error message in the console?
Also, could you check the result of the request to the server?
Another thing that I would like to suggest you is to implement theloadError(jqXHR, status, error)
callback into the jqxDataAdapter.
On that way, we will receive some feedback.Best Regards,
Hristo HristovjQWidgets team
https://www.jqwidgets.comHi Hristo,
thanks for your advice. The server result was fine and there was no error. So I started going over the tutorial again line by line and I found my error.
It’s this:beforeprocessing: function (data) { dataSource.totalRecords = data.TotalRows; }
I used camel case for totalrecords instead of all small letters. Once I fixed that, it worked fine.
-
AuthorPosts
You must be logged in to reply to this topic.