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 ...
随机推荐
- express知识点
本篇文章主要内容 1.用Express在系统文件夹内搭建一个服务器 2.Express的路由(来自 Express 文档) 3.Express的中间件(这才是关键) 4.Express的一些零碎的知识 ...
- Webpack热加载和React(其中有关于include和exclude的路径问题)
看了几个React配合webpack的教程,大部分都因为版本问题过时了.终于找到了一个不错的教程.记录下其中的知识点. 首先万分感谢这个教程的制作者.少走了许多弯路,正在学习webpack的小伙伴可以 ...
- linux环境下jdk部署配置
1.java官网下载相关的jdk包 2.配置系统环境变量,编辑/etc/profile文件,在文件的末尾添加一下信息: export JAVA_HOME=/usr/jdk1.8.0_101export ...
- spock和junit测试报告
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/20 ...
- myeclipse非正常关闭处理办法
myeclipse正常或非正常关闭后,再次运行,不显示启动时的logo和读条,进入主页面后程序基本就卡死,无法正常运行,解决办法. 方法一:修改工作空间在刚启动Myeclipse的时候会有一个选择工作 ...
- java——String、StringBuffer、StringBuilder、包装类、单双引号
String: String是一个特殊的类,被定义为final类型,为字符串常量,同样的字符串在常量池中不能重复. 但是由于使用关键字new创建新的字符串,java会在对中分配新的空间,这样即使字符串 ...
- 织梦通过 phpmyadmin 导出的数据,再次导入的时候报错
错误提示: #1291 – Column 'nature' has duplicated value '婆婆妈妈' in SET SQL 查询: -- -- 导出表中的数据 `dede_member_ ...
- rabbit的简单搭建,java使用rabbitmq queue的简单例子和一些坑
一 整合 由于本人的码云太多太乱了,于是决定一个一个的整合到一个springboot项目里面. 附上自己的项目地址https://github.com/247292980/spring-boot 以整 ...
- 实现简单Restful API
1. 首选我们通过 http://start.spring.io/ 网址生成一个基础spring boot 项目,截图配置如下: 点击 generate Project 按钮生成并下载基础项目 2. ...
- ECMAScript 原始值和引用值
原始值和引用值 在ECMAScript中,变量可以存在两种类型的值,即原始值和引用值 原始值 存储