jqgrid – articles par page

Je ne peux pas configurer les éléments par page pour jqGrid. Mon jqgrid est:

jQuery('#EmployeeTable').jqGrid({ url: '/Admin/IdeasJSON', datatype: 'json', postData: { page: page, pageIndex: pageIndex, Filter: Filter, DateStart: DateStart, DateEnd: DateEnd, TagID: TagID, StatusID: StatusID, CategoryID: CategoryID, IsDescription: IsDescription }, loadComplete: function () { pageIndex = null }, jsonReader: { page: "page", total: "total", records: "records", root: "rows", repeatitems: false, id: "" }, 

….

et la méthode MVC renvoie:

  var result = new JsonResult() { Data = new { page = page, total = total, records = totalCount, rows = IdeaForJSONs } }; result.JsonRequestBehavior = JsonRequestBehavior.AllowGet; return result; 

où IdeaForJSONs a 50 éléments. Je ne sais pas pourquoi mais la grid montre 20 éléments. Pourquoi?

Jetez un coup d’œil à l’option rowNum . De la documentation:

Définit le nombre d’enregistrements que nous voulons afficher dans la grid. Ce paramètre est transmis à l’URL pour que la routine du serveur récupère les données. Notez que si vous définissez ce paramètre sur 10 (c’est-à-dire que vous récupérez 10 enregistrements) et que votre serveur en renvoie 15, seuls 10 enregistrements seront chargés.

La valeur par défaut est 20, ce qui explique pourquoi vous ne voyez que ce nombre de lignes.

Si vous l’augmentez à 50, vous devriez voir toutes vos données dans la grid:

 jQuery('#EmployeeTable').jqGrid({ url: '/Admin/IdeasJSON', ... rowNum: 50,