I'm trying to fetch data in chunks for a kendo datasource that I bind to a dropdownlist. Fetching the data in one shot throws script warning messages in IE 8. I have close to 1600 items in the datasource. So I hope to request data in pages and merge them once all the fetching is complete. I'm not sure about the approach and I so I haven't got any code to share. This is the script warning message I get.
Related
Is JQgrid create all records in DOM or store locally in JavaScript object show records on pagination event?
Thanks
We tried JQ grid in our project experience slowness rendering table for large number of records (10,000) with page size of 50.
jqGrid stores the local data in array and display in DOM only the portion set in rowNum parameter.
Personally I think that loading 10k records locally is to big for any grid component. This will consume a lot of memory and will slow dawn any operation in the application.
The best is to store the data on server and request only the portion you want. Look here how we deal with 1 million records
I am facing the problem with jqgrid pagination.
I have a json objects in client side cache (in javascript object).
My jqgrid data type is local.
I cannot set the whole cache to jqgrid.
Let say in cache 1000 records, and on first load, I wants to provide 10 records only and when user press next button, I will read the next 10 records from cache and populate the jqgrid.
But when I set data type local and provide the 10 records on first load then jqgrid pagination show 1-10 of 10 only (instead of 1-10 of 1000).
Can you please help me to solve this problem.
Thanks & Regards,
Brijesh Baser
We have noticed that dataSources can drop rows in a few scenarios. After parsing the data from the server while it's inserting stuff into the dataSource._ranges[] array you can notice that not all of the rows that were received by dataSource:parse() and dataSource:data() are available in the ranges.
If the data response size is less than the pageSize() value then the grid has problems scrolling and paging, and upon scrolling, the dataSource() will continually request (page 1) and (page 2) over an over again.
If the data response size is larger than the pageSize() it might work, but we are unsure. We have also noticed that if the data response size is 2x the pageSize() then we are more likely to have an issue with data finding it's way in the ranges.
The server is aggregating data from several services and it's hard to predict the number of records that will be returned.
Should kendo support server responses that have more or less data than the page size suggests?
If the response size differs from the page size sent in the request, the server is not returning what is being requested of it so I would say all bets are off. I would expect the client to ignore extra data since it didn't ask for it. Is your server taking the requested page size into account when it's generating its response? I can see where it would return less data but should never return more data than requested.
I have a table that I want to page/sort with Tablesorter, and I have passed the data to the table with JSON. I would like it to add/delete/update rows as rows are added etc. in the JSON. However, the filtering also happens serverside, which means a several-second lag every time you change pages or want to search, as the request is made to a PHP page. When you have potentially several thousand rows it can get tedious.
Is it at all possible to get Tablesorter to load all rows first, and page and filter those rows via AJAX, in the same way as it does by default (ie without sending requests back and forth)? And yet still update the JSON as it changes? Or will I have to do all requests server-side as the data is being fetched dynamically? Is there any way to speed up the calls, alternatively?
Binding MVC grid to stored procedure with large amount of data:
I want to bind MVC grid to an object result that returned from SP
Normally the grid request only data needed to be shown to the user and that will be very good when binding to a table with large amount of data that lets the grid fast and its performance would be good.
i have 2 ways to bind MVC grid with SP:
Bind to SP without using .ToList() it gives me an error "The result of a query can not be enumerated more than once."
Bind to sp using .ToList() will resolve that error but it will loads all records from database first and the performance will be bad and the grid loading, paging, sorting and filtering would be very slow.
Please tell me a solution to bind MVC grid with SP that returns large amount of data with good performance.
Thank you
I have used jqgrid in the past, jqgrid implements paging so not all the content of the grid is actually displayed at once, you pick the number of rows per page and jqgrid automatically will hook the navigation to your controller. There are a lot of examples of this on the web. If you click the next page it will retrieve the appropriate data for that page and so forth.
The jqgrid page has a lot of examples in loading data that ilustrate this: http://www.trirand.com/blog/jqgrid/jqgrid.html, here is another page that talks how that is implemented at the server side using mvc http://www.codersource.net/AspNet/ASPNetAdvanced/jqGridPaginginaspnetmvc.aspx, I'm sure if you look around you'll find a lot of information on how to go about this approach.
Finally I usually avoid showing the user a lot of data anyways, mainly because it is hard for a human been to make any sense of more than 100 rows of data having a way to search further in it. So I rather try and attempt to shrink the data size giving them a way to filter it down further, but this is not always possible.
Hope this helps.