源码:https://github.com/SeaLee02/FunctionModule/blob/master/UploadFiles/WebDemo/FenYE/FenYeAjax.aspx

代码版无刷新

插件刷新版

原理:点页码的时候,我们不再去访问这个页面,而是去访问一般处理程序,把当前页,每页显示的大小,传过去,然后我们去获取数据,然后返回到前台,用js进行处理。(原理理解了,你会发现说到无刷新差不多都是这样的套路)

提问:我们什么时候去访问处理程序,或者说在那里进行这个操作

这个插件有个回调函数,并且这个回调函数里面自带一个当前页的参数,那还等什么,就是它了

前面都是一样的:

<head runat="server">
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title></title>
<link href="../CSS/TableCSS.css" rel="stylesheet" />
<link href="../CSS/pagination.css" rel="stylesheet" />
</head>
<body>
<form id="form1" runat="server">
<div class="tableDiv">
<asp:Repeater ID="repList" runat="server">
<HeaderTemplate>
<table>
<tr>
<th>序号</th>
<th>名字</th>
<th>父级ID</th>
<th>显示</th>
</tr>
</HeaderTemplate>
<ItemTemplate>
<tr>
<td><%# RowIndex++ %></td>
<td><%# Eval("Name")%></td>
<td><%# Eval("Pid") %></td>
<td><%# Eval("LevalNum") %></td>
</tr>
</ItemTemplate>
</asp:Repeater>
</div>
<div class="pagelistbody boxsizing">
<div class="pagebox">
<div class="page flickr">
</div>
</div>
<div class="pagemsg">
<p>共<span><%= pcount %></span>条数据,共<span><%=Math.Ceiling(decimal.Parse(pcount.ToString())/pagesize) %></span>页,当前第<span><%= page+ %></span>页</p>
</div>
</div>
<script src="../JS/jquery-1.11.0.min.js"></script>
<script src="../JS/jquery.tableui.js"></script>
<script src="../JS/jquery.pagination.js"></script>

js:

  <script>
$(function () {
$("table").tableUI(); //分页插件方法
$(".page").pagination(<%= pcount %>, {
num_edge_entries:, //边缘页数
num_display_entries:, //主体页数
callback:pageCallback, //回调函数
items_per_page:<%= pagesize%>, //每页显示条数
current_page:<%= page%>, //当前页
prev_text: "上一页",
next_text: "下一页"
//分页链接 strUrl是需要传递的参数 get提交
});
//回调函数
function pageCallback(page_id,jq){
//page_id 为 当前页码-1 注意这个page_id,你点第一页它是0,你点第3页它是2 需要小心了
$.ajax({
type:"Post",
url:"FenYe.ashx",
dataType:"json",
data:"page="+page_id+"&pageSize="+<%=pagesize %>,
async:true,
success:function(data){
$("table tr:gt(0)").remove();
var GetData=eval(data);
$.each(GetData,function(i,item){
var dd="<tr";
i=++i;
if (i%!=) {
dd+=" class=\"odd\"";
}else {
dd+=" class=\"even\"";
}
dd+="><td>"+i+"</td><td>"+item.Name+"</td><td>"+item.Pid+"</td><td>"+item.LevalNum+"</td></tr>";
// $("table").append("<tr class=\"even\"><td>"+(++i)+"</td><td>"+item.Name+"</td><td>"+item.Pid+"</td><td>"+item.LevalNum+"</td></tr>");
$("table").append(dd);
})
}
})
return true; //返回真就刷新,返回假不会刷新
}
});
</script>

后台跟刷新一样的

  public partial class FenYeAjax : System.Web.UI.Page
{
public int RowIndex = ;
public int page = ;
public int pcount = ;
public int pagesize = ; public string strUrl = "";
protected void Page_Load(object sender, EventArgs e)
{
if (!IsPostBack)
{
pcount = new FunctionDemo.BLL.Category().GetRecordCount("1=1");
repList.DataSource = new FunctionDemo.BLL.Category().GetPageList("1=1", pagesize, page);
repList.DataBind(); }
}
}

我们的一般处理程序

需要引用:

 需要引用,这个外部的

 public void ProcessRequest(HttpContext context)
{
context.Response.ContentType = "text/plain";
int page = context.Request.Form["page"] == null ? : Convert.ToInt32(context.Request.Form["page"].ToString());
int pageSize = Convert.ToInt32(context.Request.Form["pageSize"]);
DataTable dt = new FunctionDemo.BLL.Category().GetPageList("1=1", pageSize, page).Tables[];
context.Response.Write(JsonConvert.SerializeObject(dt));
}

效果:

这个过程是不刷新的。

jQuery Pagination分页插件--无刷新的更多相关文章

  1. jQuery Pagination分页插件--刷新

    源码地址:https://github.com/SeaLee02/FunctionModule/blob/master/UploadFiles/WebDemo/FenYE/FenYeDemo.aspx ...

  2. jQuery Pagination分页插件

    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/ ...

  3. ajax分页2:jquery.pagination +JSON 动态无刷新分页

    静态页面: <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w ...

  4. jquery+jquery.pagination+php+ajax 无刷新分页

    <!DOCTYPE html> <html ><head><meta http-equiv="Content-Type" content= ...

  5. jquery.pagination +JSON 动态无刷新分页

    <%@ Page Language="C#" AutoEventWireup="true" CodeFile="SqlPage.aspx.cs& ...

  6. Jquery Pagination分页插件使用

    JqueryPagination是个简单轻量级的分页插件,使用起来很容易,只要初始化一个实例,并设置总数量.翻页回调函数.其它参数就可以实现无刷新分页功能了. 准备工作 下载jquery.min.js ...

  7. JQuery Pagination 分页插件 增加了首页尾页以及跳转功能

    JQuery分页插件 挺好用的 但是官方是没有提供首页尾页以及跳转功能 我觉得这个功能可以有,于是就改进了一下 一个js一个css从连接里面下 链接:http://pan.baidu.com/s/1n ...

  8. jQuery Pagination分页插件的使用

    一.引用CSS和JS: <link href="/Content/Plugins/jQuery.Pagination_v2.2/pagination.css" rel=&qu ...

  9. jquery.pagination.js数据无刷新真分页

    定义一个全局的分页加载变量,并设置为true: var __isReSearch=true; 定义分页的一些数据: var __PageSize = 10; var __SearchCondition ...

随机推荐

  1. MySQL的高可用实现:MySQL系列之十四

    MySQL的高可以有三种实现方式:多主模式(Multi Master MySQL),MHA(Master High Availability)和 Galera Cluster:wresp 一.MHA ...

  2. day02笔记

    1.linux环境配置阿里云yum源 linux软件包管理之 yum工具(如同pip3工具) pip3是管理python模块的工具,自动解决模块依赖,降低开发人员心智负担 pip3 install f ...

  3. 配置IIS Web服务器

    配置IIS Web服务器 1.1 控制面板中找到“程序”并打开 1.2 程序界面找到“启用或关闭Windows功能”并打开 1.3 上面两步也可以简化为一步:按[Win + R]快捷键打开运行对话框, ...

  4. Microsoft JDBC Driver 使用 getParameterMetaData 会报错?

    不知道为何使用 Microsoft JDBC Driver for SQL Server 驱动时,sql语句不带参数没有问题,但是如果带参数且使用 getParameterMetaData 就会提示某 ...

  5. python import error:no module named yaml

    解决办法: python2 : sudo apt-get install python-yaml python3 : sudo apt-get install python3-yaml

  6. 牛客网Java刷题知识点之全局变量(又称成员变量,分为类变量和实例变量)、局部变量、静态变量(又称为类变量)

    不多说,直接上干货! 定义类其实就是在定义类中的成员.成员:成员变量<-->属性,成员函数<-->行为. 局部变量在方法内部声明,并且只能在方法内部使用,在外层的方法被调用时被 ...

  7. Docker创建Centos踩出来的坑

    屁话不多说,先来一遍正常的流程 1.下载centos镜像 # docker pull centos 2.运行容器,修改镜像 2.1 运行 # docker run -itd --name centos ...

  8. pat1099. Build A Binary Search Tree (30)

    1099. Build A Binary Search Tree (30) 时间限制 100 ms 内存限制 65536 kB 代码长度限制 16000 B 判题程序 Standard 作者 CHEN ...

  9. html5标签的兼容性处理

    HTML5的语义化标签以及属性 1.可以让开发者非常方便地实现清晰的web页面布局,加上CSS3的效果渲染,快速建立丰富灵活的web页面显得非常简单 2.使用他们能让代码语义化更直观,而且更方便SEO ...

  10. 原生js添加类名,删除类名

    1.添加类名: document.getElementById("myDiv").classList.add('mystyle'); 2.删除类名: document.getEle ...