源码: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. Travelling (三进制+状压dp)

    题目链接 #include <bits/stdc++.h> using namespace std; typedef long long ll; inline ll read(){ ,f= ...

  2. C++ | char* 在类中实践笔记

    在C++中,当类中定义有char * 变量时,在传参,构造函数,复制构造函数如何创建及赋值,来一个简单的例子就明了: #include<iostream> #include<stri ...

  3. Linux--5 mariadb和redis的安装

    一.MYSQL(mariadb) MariaDB数据库管理系统是MySQL的一个分支,主要由开源社区在维护,采用GPL授权许可. 开发这个分支的原因之一是:甲骨文公司收购了MySQL后,有将MySQL ...

  4. js:数组里面获取键名和键值

    在写php时用ajax异步传回的返回数组时是json格式,在js里面处理时有时需要用到键名,此时可以用in来处理 js只有数字索引: <script> var data = new arr ...

  5. Java 中常用的数据源

    数据源:存储了所有建立数据库连接的信息.就象通过指定文件名你可以在文件系统中找到文件一样,通过提供正确的数据源名称,你可以找到相应的数据库连接. 1.JNDI方式创建DataSource 1.1 配置 ...

  6. 二,JVM 自带命令行工具之JStat

    jstat:虚拟机统计信息见识工具 jstat是用于见识虚拟机各种运行状态信息的命令行工具.他可以显示本地或远程虚拟机进程中的类装载.内存.垃圾收集.JIT编译等运行数据. jstat option ...

  7. css 设置table样式

    <style type="text/css" >      table tr td{height:39px; font-size: 13px; line-height: ...

  8. Teradata 认证系列 - 1. TCPP这是个啥

    一看历史,好几年没发帖...正好最近在自学teradata认证(学也不一定学的完,最后也不一定去考,仅仅安慰一下不想碌碌无为的内心) 网上一搜,百度上的中文相关资料简直为0.这个不奇怪,毕竟都没什么人 ...

  9. 执行命令npm install XXX后仍然提示 Cannot find Module XXX

    最近遇到一个问题,在服务器上配置完node环境后 执行npm start 命令后提示 Cannot find Module "Jquery" 然后就知道可能没有安装jquery 就 ...

  10. Day4 HTML新增元素与CSS布局

    Day4  HTML新增元素与CSS布局 HTML新增属性: 一:常见的布局标签(都是块级元素) <header>头部</header> <nav>导航</n ...