https://www.codeproject.com/Articles/1118363/GridView-with-Server-Side-Filtering-Sorting-and-Pa

http://mvcgrid.net/download

https://github.com/joeharrison714/MVCGrid.Net

https://www.nuget.org/packages/PagedList.Mvc/

https://datatables.net/download/index

https://archive.codeplex.com/?p=jqmvcgrid

https://www.nuget.org/packages/jQuery.Grid/

https://github.com/atatanasov/gijgo

https://github.com/TroyGoode/PagedList

http://gijgo.com/grid

jadgrid.aspx

<!DOCTYPE html>
<!--HTML5 doctype-->
<html>
<head runat="server">
<meta charset="utf-8">
<meta name="viewport" content="width=device-width,initial-scale=1,user-scalable=0">
<title>JQGrid 测试分页用</title>
<link href="~/Styles/Site.css" rel="stylesheet" type="text/css" />
<script src="JQGridReq/jquery-1.9.0.min.js" type="text/javascript"></script>
<link href="JQGridReq/jquery-ui-1.9.2.custom.css" rel="stylesheet" type="text/css" />
<script src="JQGridReq/jquery.jqGrid.js" type="text/javascript"></script>
<link href="JQGridReq/ui.jqgrid.css" rel="stylesheet" type="text/css" />
<script src="JQGridReq/grid.locale-cn.js" type="text/javascript"></script>
<script type="text/javascript">
$(function () {
$("#UsersGrid").jqGrid({
url: 'geovinHandler.ashx',
datatype: 'json',
height: 550,
colNames: ['序號', '會員卡號', '會員姓名', '保證單號', '會員登錄賬號', '發佈時間'],
colModel: [
{ name: 'LotteryId', index: 'LotteryId', width: 100, sortable: true },
{ name: 'LotteryVipNo', width: 100, sortable: true, editable: true },
{ name: 'LotteryVipName', width: 100, sortable: true, editable: true },
{ name: 'LotteryGuaranteeNumber', width: 100, sortable: true, editable: true },
{ name: 'LotteryBranchAccount', width: 100, sortable: true, editable: true },
{ name: 'LotteryAddTime',formatter: "date",ormatoptions: { srcformat: "ISO8601Long", newformat: "m/d/Y h:i A" }, width: 150, sortable: true }
],
rowNum: 50,
mtype: 'GET',
loadonce: true,
rowList: [50, 100, 300],
pager: '#UsersGridPager',
sortname: 'LotteryId',
viewrecords: true,
sortorder: 'asc',
editurl: 'geovinHandler.ashx',
caption: '會員穫得中獎名單'
}); $("#UsersGrid").jqGrid('navGrid', '#UsersGridPager',
{
edit: true,
add: true,
del: true,
search: true,
searchtext: "Search",
addtext: "Add",
edittext: "Edit",
deltext: "Delete"
},
{ //EDIT
// height: 300,
// width: 400,
// top: 50,
// left: 100,
// dataheight: 280,
closeOnEscape: true, //Closes the popup on pressing escape key
reloadAfterSubmit: true,
drag: true,
afterSubmit: function (response, postdata) {
if (response.responseText == "") { $(this).jqGrid('setGridParam', { datatype: 'json' }).trigger('reloadGrid'); //Reloads the grid after edit
return [true, '']
}
else {
$(this).jqGrid('setGridParam', { datatype: 'json' }).trigger('reloadGrid'); //Reloads the grid after edit
return [false, response.responseText]//Captures and displays the response text on th Edit window
}
},
editData: {
EmpId: function () {
var sel_id = $('#UsersGrid').jqGrid('getGridParam', 'selrow');
var value = $('#UsersGrid').jqGrid('getCell', sel_id, 'LotteryId');
return value;
}
}
},
{
closeAfterAdd: true, //Closes the add window after add 如何自定義添加窗口?
afterSubmit: function (response, postdata) {
if (response.responseText == "") { $(this).jqGrid('setGridParam', { datatype: 'json' }).trigger('reloadGrid')//Reloads the grid after Add
return [true, '']
}
else {
$(this).jqGrid('setGridParam', { datatype: 'json' }).trigger('reloadGrid')//Reloads the grid after Add
return [false, response.responseText]
}
}
},
{ //DELETE
closeOnEscape: true,
closeAfterDelete: true,
reloadAfterSubmit: true,
closeOnEscape: true,
drag: true,
afterSubmit: function (response, postdata) {
if (response.responseText == "") { $("#UsersGrid").trigger("reloadGrid", [{ current: true}]);
return [false, response.responseText]
}
else {
$(this).jqGrid('setGridParam', { datatype: 'json' }).trigger('reloadGrid');
return [true, response.responseText]
}
},
delData: {
EmpId: function () {
var sel_id = $('#UsersGrid').jqGrid('getGridParam', 'selrow');
var value = $('#UsersGrid').jqGrid('getCell', sel_id, 'LotteryId');
return value;
}
}
},
{//SEARCH
closeOnEscape: true });
}); </script>
</head>
<body>
<form id="form1" runat="server">
<div>
<table id="UsersGrid" cellpadding="0" cellspacing="0">
</table>
<div id="UsersGridPager">
</div>
</div>
</form>
</body>
</html>

  geovinHandler.ashx:

 /// <summary>
/// $codebehindclassname$ 的摘要说明
/// geovindu
/// 20180128
/// 涂聚文
/// </summary>
[WebService(Namespace = "http://tempuri.org/")]
[WebServiceBinding(ConformsTo = WsiProfiles.BasicProfile1_1)]
public class geovinHandler : IHttpHandler
{ DuMembershipLotteryBLL bll = new DuMembershipLotteryBLL();
/// <summary>
///
/// </summary>
/// <param name="context"></param>
public void ProcessRequest(HttpContext context)
{
HttpRequest request = context.Request;
HttpResponse response = context.Response; System.Collections.Specialized.NameValueCollection forms = context.Request.Form;
string strOperation = forms.Get("oper"); //
response.Write(strOperation);
string strResponse = string.Empty;
string _search = request["_search"];
string numberOfRows = request["rows"];
string pageIndex = request["page"];
string sortColumnName = request["sidx"];
string sortOrderBy = request["sord"];
int totalRecords;
List<DuMembershipLotteryInfo> info = new List<DuMembershipLotteryInfo>();
if (strOperation == null)
{
info = bll.SelectDuMembershipLotteryPaging(Convert.ToInt32(numberOfRows), Convert.ToInt32(pageIndex), sortColumnName, sortOrderBy, out totalRecords);
string output = BuildJQGridResults(info, Convert.ToInt32(numberOfRows), Convert.ToInt32(pageIndex), Convert.ToInt32(totalRecords));
response.Write(output);
}
else if (strOperation == "del")
{
string strEmpId = forms.Get("id").ToString();
//DeleteEmployee(strEmpId);
bool del = false;
del = bll.DeleteDuMembershipLottery(Convert.ToInt32(strEmpId));
if (del)
{
strResponse = "删除成功";
}
context.Response.Write(strResponse); }
else
{
string strOut = string.Empty;
AddEdit(forms, info, out strOut);
context.Response.Write(strOut);
}
} /// <summary>
///
/// </summary>
/// <param name="users"></param>
/// <param name="numberOfRows"></param>
/// <param name="pageIndex"></param>
/// <param name="totalRecords"></param>
/// <returns></returns>
private string BuildJQGridResults(List<DuMembershipLotteryInfo> infos, int numberOfRows, int pageIndex, int totalRecords)
{ JQGridResults result = new JQGridResults();
List<JQGridRow> rows = new List<JQGridRow>();
foreach (DuMembershipLotteryInfo info in infos)
{
JQGridRow row = new JQGridRow();
row.id = info.LotteryId;
row.cell = new string[6];
row.cell[0] = info.LotteryId.ToString();
row.cell[1] = info.LotteryVipNo;
row.cell[2] = info.LotteryVipName;
row.cell[3] = info.LotteryGuaranteeNumber;
row.cell[4] = info.LotteryBranchAccount;
row.cell[5] = info.LotteryAddTime.ToString();
rows.Add(row);
}
result.rows = rows.ToArray();
result.page = pageIndex;
result.total = totalRecords / numberOfRows;
result.records = totalRecords;
return new JavaScriptSerializer().Serialize(result);
} /// <summary>
/// 添加或修改操作
/// </summary>
/// <param name="forms"></param>
/// <param name="collectionEmployee"></param>
/// <param name="strResponse"></param>
private void AddEdit(NameValueCollection forms, List<DuMembershipLotteryInfo> collectionInfo, out string strResponse)
{
string strOperation = forms.Get("oper");
string strEmpId = string.Empty;
DuMembershipLotteryInfo info = new DuMembershipLotteryInfo();
info.LotteryVipNo = forms.Get("LotteryVipNo").ToString();
info.LotteryVipName = forms.Get("LotteryVipName").ToString();
info.LotteryGuaranteeNumber = forms.Get("LotteryGuaranteeNumber").ToString();
info.LotteryBranchAccount = forms.Get("LotteryBranchAccount").ToString();
info.LotteryAddTime = DateTime.Now;
int saveok = 0;
//string strdate = forms.Get("UpdateTime").ToString(); if (strOperation == "add")
{
string result = "0";
strEmpId = (Convert.ToInt32(result) + 1).ToString();
saveok = bll.InsertDuMembershipLottery(info);
if (saveok > 0)
{
strResponse = "record successfully added添加成功";
}
else
{ strResponse = ""; }
}
else if (strOperation == "edit")
{
strEmpId = forms.Get("EmpId").ToString(); //获取修改ID
info.LotteryId = Convert.ToInt32(strEmpId);
saveok=bll.UpdateDuMembershipLottery(info);
if (saveok > 0)
{
strResponse = "record successfully updated修改成功";
}
else
{ strResponse = ""; }
}
else
{
strResponse = "";
} }
/// <summary>
///
/// </summary>
public bool IsReusable
{
get
{
return false;
}
}
}

  

JqGrid: paging int asp.net的更多相关文章

  1. 使用jqgrid的C#/asp.net mvc开发者的福音 jqgrid-asp.net-mvc

    你是否使用jqgrid? 你是否想在C#/asp.net mvc中使用jqgrid? 那你很可能曾经为了分析jqgrid的request url用fiddler忙活了2个小时.(如果你要使用jqgri ...

  2. JqGrid: Add,Edit,Del in asp.net

    https://github.com/1rosehip/jplist https://github.com/free-jqgrid/jqGrid https://plugins.jquery.com/ ...

  3. [转]Paging, Searching and Sorting in ASP.Net MVC 5

    本文转自:http://www.c-sharpcorner.com/UploadFile/4b0136/perform-paging-searching-sorting-in-Asp-Net-mvc- ...

  4. 能省则省:在ASP.NET Web API中通过HTTP Headers返回数据

    对于一些返回数据非常简单的 Web API,比如我们今天遇到的“返回指定用户的未读站内短消息数”,返回数据就是一个数字,如果通过 http response body 返回数据,显得有些奢侈.何不直接 ...

  5. [转]Efficiently Paging Through Large Amounts of Data

    本文转自:http://msdn.microsoft.com/en-us/library/bb445504.aspx Scott Mitchell April 2007 Summary: This i ...

  6. ASP.NET MVC 5 實作 GridView 分頁

    本文用 ASP.NET MVC 5 實作一個 GridView,功能包括: 分頁(paging).關鍵字過濾(filtering).排序(sorting).AJAX 非同步執行,外觀上亦支援 Resp ...

  7. java、asp.net 通用分页码函数

    <script type="text/javascript"> $(document).ready(function(){ ajaxGetPaging(1); }); ...

  8. asp.net sql无限极分类实例程序

    数据库结构  代码如下 复制代码 create table category(    id                  int,                    clsno         ...

  9. ASP.NET MVC 表格操作

    Beginners Guide for Creating GridView in ASP.NET MVC 5 http://www.codeproject.com/Articles/1114208/B ...

随机推荐

  1. 设置Acad2008默认启动 win10设置默认cad2008启动 调试设置.

    Windows Registry Editor Version 5.00 [HKEY_CLASSES_ROOT\AutoCAD.Drawing.17\shell\open\command]@=&quo ...

  2. 从理论到实践 全面理解HTTP/2

    前言 为了降低加载时间,相信大多数人都做过如下尝试 Keep-alive: TCP持久连接,增加了TCP连接的复用性,但只有当上一个请求/响应完全完成后,client才能发送下一个请求 Pipelin ...

  3. LabVIEW(十):数组和簇

    一.数组 1.创建数组 (1).前面板右键>“数组.矩阵与簇”>数组. (2).前面板右键>(选择要添加的数组数据类型,比如创建数值数组)数值>将“数值输入控件”拖入数组中. ...

  4. MySQL:事务的隔离性

    [参考文章]:数据库的事务特性及隔离级别 1. 事务的四大特性 1.1 原子性(Atomicity) 原子性是指事务包含的所有操作要么全部成功,要么全部失败回滚,因此事务的操作如果成功就必须要完全应用 ...

  5. HttpClient 传输文件的两种方式

    1. org.apache.commons.httpclient.HttpClient 1.1 pom <dependency> <groupId>org.apache.htt ...

  6. java中微信统一下单采坑(app微信支付)

    app支付前java后台统一下单文档:https://pay.weixin.qq.com/wiki/doc/api/app/app.php?chapter=9_1 微信支付接口签名校验工具:https ...

  7. Spring Boot日志集成实战

    Spring Boot日志框架 Spring Boot支持Java Util Logging,Log4j2,Lockback作为日志框架,如果你使用starters启动器,Spring Boot将使用 ...

  8. iOS-常用的两个弹簧动画pop

    POPSpringAnimation *popAna = [POPSpringAnimation animationWithPropertyNamed:kPOPLayerPosition]; popA ...

  9. Jenkins系列之二——centos 6.9 + JenKins 安装

    centos 6.9 + JenKins 安装记录环境: [root@localhost ~]# cat /etc/issue CentOS release 6.9 (Final) Kernel \r ...

  10. Jenkins系列之一——初识

    Jenkins Jenkins是一个开源软件项目,是基于Java开发的一种持续集成工具,用于监控持续重复的工作,旨在提供一个开放易用的软件平台,使软件的持续集成变成可能. 功能 Jenkins功能包括 ...