<script src="../Js/jQuery/jquery-1.8.2.min.js" type="text/javascript"></script> <script type="text/javascript"> $(document).ready(function() { $("#pages").val(Math.ceil(50 / 10)); }); //翻页 function changePage(ctype) { switch (ctype) { case 'first': $("#page").val(1); break; case 'prev': if ($("#page").val() > 1) { var num = parseInt($("#page").val()) - 1; $("#page").val(num); } break; case 'next': if ($("#page").val() < $("#pages").val()) { var num = parseInt($("#page").val()) + 1; $("#page").val(num); } break; case 'last': $("#page").val($("#pages").val()); break; } // if ($("#newp").val() == $("#page").val()) // return false; populate(); } //获取数据 function populate() { if ($("#page").val() > $("#pages").val()) $("#page").val($("#pages").val()); var param = [ { name: 'page', value: $("#page").val() } , { name: 'rp', value: 10 } , { name: 'sortname', value: "" } , { name: 'sortorder', value: "" } , { name: 'query', value: "" } , { name: 'qtype', value: "" } , { name: 'primaryKey', value: "" } ]; $.ajax({ type: "POST", url: "HandlerPager.ashx?Action=Pagers", async: true, data: param, dataType: "json", success: function(data) { $("#spanPageIndex").html(data); }, error: function(data) { try { } catch (e) { } } }); } </script>
<div> <input type="hidden" value="1" id="page" /><!--当前页--> <input type="hidden" value="1"id="pages" /><!--总页数--> <span id="first" onclick="changePage(this.id)">首页</span> <span id="prev" onclick="changePage(this.id)">上一页</span> <span id="spanPageIndex" >1</span> <span id="next" onclick="changePage(this.id)">下一页</span> <span id="last" onclick="changePage(this.id)">尾页</span> </div>
public class HandlerPager : IHttpHandler { private string requestParam = string.Empty;//HttpHandler用于异步调用提交的服务器类 public void ProcessRequest(HttpContext context) { requestParam = context.Request.QueryString["Action"]; switch (requestParam) { case "Pagers": //ᄄ Pagers(context); break; } } void Pagers(HttpContext context) { string result = string.Empty; Model_Wzsjfycs parm = FlexiGridParm.GetFlexiGridParam(context); result = parm.PageIndex.ToString(); context.Response.ContentType = "text/plain"; context.Response.Write(result); } public bool IsReusable { get { return false; } } }
/// <summary> /// 分页请求参数类 可有可无,为了方便获取数据 /// </summary> public class Model_Wzsjfycs { /// <summary> /// 当前页码 /// </summary> public int PageIndex; /// <summary> /// /// </summary> public int PageSize; /// <summary> /// 主键 /// </summary> public string PrimaryKey; /// <summary> /// 排序字段(多个字段用','号分开) /// </summary> public string OrderFields; /// <summary> /// 排序方式(asc 、desc) /// </summary> public string Order; /// <summary> /// 查询字段 /// </summary> public string FilterFields; /// <summary> /// 查询内容 /// </summary> public string FilterContents; }
public class FlexiGridParm { /// <summary> /// 从HTTP中提取请求并封装FlexiGridParm类 用于解析 HttpContent请求上下文对象(页面发送请求的数据 以及 请求后返回的数据 ); /// </summary> /// <param name="context">HttpContext</param> /// <returns>Model_PagingParm</returns> public static Model_Wzsjfycs GetFlexiGridParam(HttpContext context) { string pageIndex = context.Request["page"], pageSize = context.Request["rp"], primaryKey = context.Request["primaryKey"], orderFields = context.Request["sortname"], order = context.Request["sortorder"], filterFields = context.Request["qtype"], filterContents = context.Request["query"]; Model_Wzsjfycs parm = new Model_Wzsjfycs(); //当前页码 if (!string.IsNullOrEmpty(pageIndex)) parm.PageIndex = int.Parse(pageIndex); else parm.PageIndex = 0; //一页显示条数 if (!string.IsNullOrEmpty(pageSize)) parm.PageSize = int.Parse(pageSize); else parm.PageSize = 0; //主键 if (!string.IsNullOrEmpty(primaryKey)) parm.PrimaryKey = primaryKey; else parm.PrimaryKey = string.Empty; //排序 if (!string.IsNullOrEmpty(orderFields)) parm.OrderFields = orderFields.Trim(); else parm.OrderFields = string.Empty; //排序字段 if (!string.IsNullOrEmpty(order) && order.ToLower() == "desc") parm.Order = "desc"; else parm.Order = "asc"; //查询字段 if (!string.IsNullOrEmpty(filterFields) && filterContents != null) { parm.FilterFields = filterFields; parm.FilterContents = context.Server.UrlDecode(filterContents); } else parm.FilterFields = parm.FilterContents = string.Empty; return parm; } /// <summary> /// 获取FlexiGridParm 对象 /// </summary> /// <param name="pageIndex">当前页码</param> /// <param name="pageSize">一页显示条数</param> /// <param name="primaryKey">主键</param> /// <param name="orderFields">排序字段(多个用','号隔开)</param> /// <param name="order">排序方式(asc、desc)</param> /// <param name="filterFields">查询字段</param> /// <param name="filterContents">查询内容</param> /// <returns>Model_PagingParm</returns> public static Model_Wzsjfycs GetFlexiGridParam(int pageIndex, int pageSize, string primaryKey, string orderFields, string order, string filterFields, string filterContents) { Model_Wzsjfycs parm = new Model_Wzsjfycs(); parm.PageIndex = pageIndex; parm.PageSize = pageSize; parm.PrimaryKey = primaryKey; parm.OrderFields = orderFields; parm.Order = order; parm.FilterFields = filterFields; parm.FilterContents = filterContents; return parm; } }