How to pass page number to kendo datasource, so it could load data of page 2? -
following code builds kendo datasource:
var datasource = new kendo.data.datasource({ serverpaging: true, schema: { data: "listmediasummary", total: "rowcount", }, transport: { read: { url: gappbaseurl + "universalsearch/searchdata?searchtext=" + searchtext + "&pagenumber=" + page, type: "post", datatype: "json", } }, parametermap: function (data, type) { if (type == "read") { return { $top: data.take, $skip: data.skip } } }, page: 1, pagesize: 25, }); and here passing parameter "searchtext" , "pagenumber" transport.read method action method in asp.net controller, after search results gets rendered kendo listview. action method gets "searchtext" value dosent gets pagenumber? although in post passes page number(checked in firebug) want pass page number transport.read method in function. how achieve this?
to enable server paging, should configure data source enable serverpaging. data source leave data item paging implementation remote service. default data source performs paging client-side.
<script> var datasource = new kendo.data.datasource({ transport: { /* transport configuration */ }, serverpaging: true, schema: { total: "total" // total returned in "total" field of response } }); </script> don't forget set schema.total if set serverpaging true.
the following options sent server when server paging enabled:
- page - page of data item return (1 means first page)
- pagesize - number of items return
- skip - how many data items skip
- take - number of data items return (the same pagesize)
therefore should change controller action method this:
public actionresult getdata(int page, int pagesize, int skip, int take){ // magic operation }
Comments
Post a Comment