jQuery Pagination分页插件--无刷新
源码: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分页插件--无刷新的更多相关文章
- jQuery Pagination分页插件--刷新
源码地址:https://github.com/SeaLee02/FunctionModule/blob/master/UploadFiles/WebDemo/FenYE/FenYeDemo.aspx ...
- jQuery Pagination分页插件
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/ ...
- ajax分页2:jquery.pagination +JSON 动态无刷新分页
静态页面: <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w ...
- jquery+jquery.pagination+php+ajax 无刷新分页
<!DOCTYPE html> <html ><head><meta http-equiv="Content-Type" content= ...
- jquery.pagination +JSON 动态无刷新分页
<%@ Page Language="C#" AutoEventWireup="true" CodeFile="SqlPage.aspx.cs& ...
- Jquery Pagination分页插件使用
JqueryPagination是个简单轻量级的分页插件,使用起来很容易,只要初始化一个实例,并设置总数量.翻页回调函数.其它参数就可以实现无刷新分页功能了. 准备工作 下载jquery.min.js ...
- JQuery Pagination 分页插件 增加了首页尾页以及跳转功能
JQuery分页插件 挺好用的 但是官方是没有提供首页尾页以及跳转功能 我觉得这个功能可以有,于是就改进了一下 一个js一个css从连接里面下 链接:http://pan.baidu.com/s/1n ...
- jQuery Pagination分页插件的使用
一.引用CSS和JS: <link href="/Content/Plugins/jQuery.Pagination_v2.2/pagination.css" rel=&qu ...
- jquery.pagination.js数据无刷新真分页
定义一个全局的分页加载变量,并设置为true: var __isReSearch=true; 定义分页的一些数据: var __PageSize = 10; var __SearchCondition ...
随机推荐
- PJzhang:英国通信总部GCHQ开源产品-网络瑞士军刀CyberChef
猫宁!!! 参考链接:https://www.4hou.com/info/news/981.html 这个产品免费开源易用,如果称之为网络瑞士军刀,没什么异议. github地址:https://gi ...
- Codeforces Round #364 (Div. 2) A
Description There are n cards (n is even) in the deck. Each card has a positive integer written on i ...
- 查询rabbitmq
package com.yunda.app.service; import java.io.InputStream; import java.net.HttpURLConnection; import ...
- java资料
HTML5+CSS3视频教程:http://pan.baidu.com/s/1hsyOjze 密码:c3uw JavaScript视频教程:链接:http://pan.baidu.com/s/1 ...
- 练习二十二:python兵乓求比赛顺序练习,关于连个兵乓球队进行比赛
已知有两支兵乓球队进行比赛,每队各出3人: 甲队有a,b,c三人,乙队有x,y,z三人,已抽签决定比赛名单 问题:有人向队员打听比赛名单.a说他不和X比,c说他不和x,z比,程序找出比赛对手 方法一: ...
- 积分图像的应用(二):非局部均值去噪(NL-means)
非局部均值去噪(NL-means)一文介绍了NL-means基本算法,同时指出了该算法效率低的问题,本文将使用积分图像技术对该算法进行加速. 假设图像共像个素点,搜索窗口大小,领域窗口大小, 计算两个 ...
- python入门之random模块
#!/usr/bin/env python #_*_encoding: utf-8_*_ import random print(random.random()) #生成一个在0到1之间的随机浮点数 ...
- Linux中vim编辑器常用操作技巧
Normal 0 false false false EN-US ZH-CN X-NONE /* Style Definitions */ table.MsoNormalTable {mso-styl ...
- 关于docker下容器和宿主机器时间不一致问题
在前几天,在阿里云的ECS上部署一个docker应用时,发现部署的应用在请求第三方应用时,一直出现超时的异常提示,刚开始以为是第三方应用系统的问题(此系统无赖躺枪,反正也不是一次两次了,多躺几次也就习 ...
- FormsAuthentication IsAuthenticated一直为false
解决办法: 在Web.Config中添加一下红框的内容