jqgrid - 在jqgrid中,如何导航

  显示原文与译文双语对照的内容
0 0

我是jqgrid中的初学者,我为创建和填充jqgrid编写了这个代码( 我在 ASP.NET 中使用了存储库 pattrn )

 namespace Clearance.Helper
 {
 using System;
 public class JQGridRow
 {
 public int id;
 public string[] cell;
 }
 }
 namespace Clearance.Helper
 {
 public class JQGridResults
 {
 public int Page { get; set; }
 public int Total { get; set; }
 public int Records { get; set; }
 public JQGridRow[] rows;
 }
 }
namespace Clearance.Business
{
 using System;
 using System.Linq;
 using Model;
 using Clearance.Repository;
 using System.Collections.Generic;
 using System.Web.Script.Serialization;
 using Clearance.Helper;
 public class TransportTypesBusiness : GenericBusiness<CLEARANCEEntities, TRANSPORT_TYPES>
 {
 public List<TRANSPORT_TYPES> GetAll(int pageSize, int pageIndex)
 {
 var repository = new TransportTypesRepository(this.Context);
 return (List<TRANSPORT_TYPES>) repository.GetAll().OrderBy(c => c.TRANSPORT_ID).Skip(pageIndex * pageSize).Take(pageSize);
 }
 public string BuildJQGridResults(int numberOfRows = 0, int pageIndex = 0, int totalRecords = 0)
 {
 var result = new JQGridResults();
 var rows = new List<JQGridRow>();
 var list = GetAll(numberOfRows, pageIndex);
 int li = list.Count();
 totalRecords = list.Count();
 foreach (var item in list)
 {
 var row = new JQGridRow { id = item.TRANSPORT_ID, cell = new string[4] };
 row.cell[0] = item.TRANSPORT_ID.ToString();
 row.cell[1] = item.TRANSPORT_NAME;
 row.cell[2] = item.TRANSPORT_ABBR;
 row.cell[3] = item.REMARK;
 rows.Add(row);
 }
 result.rows = rows.ToArray();
 if ((numberOfRows!= 0) && (pageIndex!= 0) && (totalRecords!= 0))
 {
 result.Page = pageIndex;
 result.Total = (totalRecords + numberOfRows - 1)/numberOfRows;
 result.Records = totalRecords;
 }
 return new JavaScriptSerializer().Serialize(result);
 }
}}

js代码

 $(function () {
 var grid = $('#list');
 grid.jqGrid({
 url: 'jQGridHandler.ashx',
 editurl: 'jQGridHandler.ashx',
 postData: { ActionPage: 'TransportType', Action: 'Fill' },
 ajaxGridOptions: { cache: false },
 datatype: 'json',
 height: 'auto',
 colNames: ['TRANSPORT_ID', 'TRANSPORT_NAME', 'TRANSPORT_ABBR', 'REMARK'],
 colModel: [
 { name: 'TRANSPORT_ID', index: 'TRANSPORT_ID', key: true, hidden: true, editable: false },
 { name: 'TRANSPORT_NAME', width: 200, sortable: true, editable: true },
 { name: 'TRANSPORT_ABBR', width: 100, sortable: true, editable: true },
 { name: 'REMARK', width: 100, sortable: true, editable: true }
 ],
 rowNum: 10,
 rowList: [10, 20, 30],
 pager: '#pager',
 prmNames: { nd: null },
 gridview: true,
 sortname: 'TRANSPORT_ID',
 viewrecords: true,
 caption: '',
 rownumbers: true
 });

当jqgrid加载数据集当前页为 0且 icon 下和privice启用时。 请帮我,谢谢

时间:原作者:1个回答

0 0

页码的问题很容易解决。 类 JQGridResults 具有属性 PageTotalRecordsrows,但是默认名称为 PageTotalRecordsrows 。 因此 rows 是唯一能正确读取的属性。

要修复这里问题,可以重命名 JQGridResults 中的属性,或者在jqGrid中包含以下附加参数:

jsonReader: {page:"Page", total:"Total", records:"Records"}

更多的信息( 包含完整工作 Visual Studio 演示项目。),关于jqGrid的使用与可以以在中找到的应答in的应用程序。

原作者:
...