Jquery分页功能
Jquery代码
/// <reference path="jquery-1.9.1-vsdoc.js" />
//锚点
var anchor="#apage";
$(function(){
pagerFun();
$("#btnSearch").click(function(){
var name=$.trim($("#txtHospitalName").val());
var provinceId=$("#selProvince").val();
var rateLevel= $("#selRateLevel").val();
var pageUrl=location.href.replace(location.search,"").replace(anchor,"");
var newURL=pageUrl+"?name="+encodeURIComponent(name)+"&pid="+provinceId+"&level="+rateLevel+anchor;
location.href=newURL;
//location.replace(newURL)
});
// var Request = new Object();
// Request = $.getRequest();
// if(Request["name"]){
// var name=Request["name"];
// $("#txtHospitalName").val(decodeURIComponent(name));
// }
});
//分页方法
function pagerFun(){
var pageIndex=$("#hidPageIndex").val();
var pageCount=$("#hidPageCount").val();
var pageUrl=location.href.replace(location.search,"").replace(anchor,"");
var urlSearch=location.search;
if(urlSearch.indexOf("?") != -1) {
urlSearch=urlSearch.substr(1);
var paraArr=urlSearch.split("&");
if(paraArr[0].indexOf("p=")!=-1){
urlSearch=urlSearch.replace(paraArr[0],"");
}
if(urlSearch!=""&urlSearch.indexOf("&")!=0){
urlSearch="&"+urlSearch;
}
}
var strPager="";
var showPager=5;
var startIndex=1;
var endIndex=pageCount;
if(pageCount==2){
if(pageIndex==1){
strPager="<a class=\"curr\" href=\""+pageUrl+"?p=1"+urlSearch+anchor+"\">1</a>";
strPager=strPager+"<a href=\""+pageUrl+"?p=2"+urlSearch+anchor+"\">2</a>";
}
else{
strPager="<a href=\""+pageUrl+"?p=1"+urlSearch+anchor+"\">1</a>";
strPager=strPager+"<a class=\"curr\" href=\""+pageUrl+"?p=2"+urlSearch+anchor+"\">2</a>";
}
}
if(pageCount>2){
var prevPage=pageIndex-1;
if(prevPage<=0){
strPager="<span>上一页</span>";
}
else{
strPager="<a href=\""+pageUrl+"?p="+prevPage+urlSearch+anchor+"\">上一页</a>";
}
if(pageIndex>=5&&pageCount>5){
startIndex=parseInt(pageIndex)-2;
strPager=strPager+"<a href=\""+pageUrl+"?p=1"+urlSearch+anchor+"\">1</a>";
strPager=strPager+"<span class=\"defspan\">...</span>";
endIndex=parseInt(pageIndex)+2;
if(endIndex>=pageCount){
endIndex=pageCount;
startIndex=parseInt(pageCount)-4;
}
}
else{
if(pageCount>showPager){
if(pageIndex<showPager){
endIndex=showPager;
}
else{
endIndex=parseInt(pageIndex) +parseInt(showPager)-2;
}
}
}
for(var i=startIndex;i<=endIndex;i++)
{
if(i==pageIndex){
strPager=strPager+"<a class=\"curr\" href=\""+pageUrl+"?p="+i+urlSearch+anchor+"\">"+i+"</a>";
continue;
}
strPager=strPager+"<a href=\""+pageUrl+"?p="+i+urlSearch+anchor+"\">"+i+"</a>";
}
if(endIndex<pageCount){
if(endIndex!=parseInt(pageCount)-1){
strPager=strPager+"<span class=\"defspan\">...</span>";
}
strPager=strPager+"<a href=\""+pageUrl+"?p="+pageCount+urlSearch+anchor+"\">"+pageCount+"</a>";
}
var nextPage=parseInt(pageIndex)+1;
if(nextPage>pageCount){
strPager=strPager+"<span>下一页</span>";
}
else{
strPager=strPager+"<a href=\""+pageUrl+"?p="+nextPage+urlSearch+anchor+"\">下一页</a>";
}
}
$("#divPager").html(strPager);
}
前端代码
<input type="hidden" id="hidPageIndex" value="1" runat="server" />
<input type="hidden" id="hidPageCount" value="1" runat="server" />
<div class="pager" style="height: 30px;">
<div id="divPager" style="float: right; margin-right: 40px;">
</div>
</div>
后台代码
/// <summary>
/// 数据加载
/// </summary>
/// <param name="pageIndex">页码</param>
/// <param name="provinceId">省份id</param>
/// <param name="name">医院名字</param>
/// <param name="level">星级</param>
private void DataLoad(int pageIndex, int provinceId, string name, string level)
{
phDataContext ph = new phDataContext();
//IQueryable<PetOrg> petOrgList = ph.PetOrg.Where(p => p.State == 1 && (p.ProvinceId == provinceId || provinceId == 0));
IQueryable<W_Petorg_PMP_PetOrgMoreInformation> petOrgList = ph.W_Petorg_PMP_PetOrgMoreInformation.Where(s => s.OrgState == 1);
if (!name.IsNullOrEmptyOrWhiteSpace())
{
name = Uri.UnescapeDataString(name);
txtHospitalName.Value = name;
petOrgList = petOrgList.Where(p => p.OrgName.Contains(name));
}
if (!provinceId.ToString().IsNullOrEmptyOrWhiteSpace()&&provinceId!=0)
{
petOrgList = petOrgList.Where(a => a.ProvinceId == provinceId);
}
int count = petOrgList.Count();
int pageCount = OperatHelper.GetUpInt(count, pageSize);
if (pageIndex > pageCount)
{
pageIndex = pageCount;
}
if (pageIndex <= 0)
{
pageIndex = 1;
}
if (count == 0)
{
//noHospital.InnerText = "无记录!";
}
else
{
rep_bind.DataSource = petOrgList.OrderByDescending(p => p.CreateDate).Skip((pageIndex - 1) * pageSize).Take(pageSize);
rep_bind.DataBind();
}
hidPageCount.Value = pageCount.ToString();
hidPageIndex.Value = pageIndex.ToString();
}
Jquery分页功能的更多相关文章
- 【jQuery 分页】jQuery分页功能的实现
自写的jQuery实现分页功能的分页组件: 功能效果如下: 分页组件就是上图中的三部分, 分别放在表格上部 和下部 . 其中, 1>>>页面的代码如下: product.jsp 其 ...
- jquery 分页功能
<div class="wrapper"> <div class="row"> <div class="col-sm-1 ...
- jPList – 实现灵活排序和分页功能的 jQuery 插件
jPList 是一个灵活的 jQuery 插件,可以用于任何 HTML 结构的排序,分页和筛选.它支持的数据源包括:PHP + MySQL,ASP.NET + SQL Server,PHP + SQL ...
- jQuery实现的简单分页功能的详细解析
分页功能在项目开发中不可或缺,老司机操作起来就和呼吸一样简单,新手恐怕就会吃力一些. 今天我回顾了一下具体的操作步骤,决定详细的分析一下每一步的实现目的及原理. 我们会创建一个简单的json文件来模拟 ...
- Jquery、Ajax实现新闻列表页分页功能
前端页面官网的开发,离不开新闻列表,新闻列表一般都会有分页的功能,下面是我自己总结加查找网上资料写的一个分页的功能,记录一下. 首先,官网的开发建立在前后端分离的基础上: 再有,后端小伙伴们提供列表页 ...
- jQuery静态分页功能
分页功能在做项目的过程中是常常用到的,下面是我常用的一款分页效果: 1.分页的CSS样式(page.css) #setpage { margin: 15px auto; text-align: cen ...
- 分享5种风格的 jQuery 分页效果【附代码】
jPaginate 是一款非常精致的分页插件,提供了五种不同风格的分页效果,支持鼠标悬停翻页,快速分页功能.这款插件还提供了丰富的配置选项,你可以根据需要进行设置. 效果演示 源码下载 各个 ...
- Jqgrid的用法总结与分页功能的拓展
这是本人写的第一个与技术相关的博客,但是非挑战技术的,而是对工作的总结,另外加一点点拓展. Jqgrid的功能十分强大,强大到可以做到与数据grid相关的任何功能,同时由于在用的过程中总是不能够一气呵 ...
- jquery 分页控件2
jquery 分页控件(二) 上一章主要是关于分页控件的原理,代码也没有重构.在这一章会附上小插件的下载链接,插件主要就是重构逻辑部分,具体可以下载源文件看下,源代码也有注释.为了测试这个插件是能用的 ...
随机推荐
- mysql判断一条记录是否存在,如果存在,则更新此语句,如果不存在,则插入
前言,在我们的业务逻辑中,很有可能会遇到这样的情况. 1.我要更新一条记录的值. 2.但是我不确定这条记录存不存在??? 3.那如果存在?我就更新,如果不存在,我就插入! 那么如果这样,一般情况下,我 ...
- java中复制对象通过反射或序列化
在使用缓存读取数据后修改发现缓存被修改.于是找了下复制对象的方法. 关于对象克隆 按我的理解,对象是包含引用+数据.通常变量复制都是将引用传递过去.比如: Person p1 = new Person ...
- java反射实现动态代理
参考:http://www.cnblogs.com/rollenholt/archive/2011/09/02/2163758.html http://my.oschina.net/lyp3314/b ...
- 第23/24周 临时数据库(TempDb)
在今天的性能调优培训里我们讨论下TempDb——SQL Server的公共厕所,在SQL Server里我是这样描述它的.我们的每个人都会经常使用TempDb.有些人直接使用它,有些人不直接使用它.今 ...
- ROS 不能再详细的安装教程
版权声明:本文为博主原创文章,转载请标明出处: http://www.cnblogs.com/liu-fa/p/5779206.html 关于ROS(Robot OS 机器人操作系统),估计看这个博文 ...
- 使用CSS3对链接颜色与下划线进行优化
效果: 代码: <!DOCTYPE html> <html lang="en"> <head> <meta charset="U ...
- Dapper学习 - Dapper.Rainbow(一) - Create
Dapper这个ORM有许多扩展, 我自己用过两种, 也算是比较主流的两种, Rainbow和Extension, 这里就先介绍下Rainbow吧, 毕竟这个先用, 当然, 由于我使用的是mysql数 ...
- WCF学习笔记1--发布使用配置文件的服务
关于WCF的入门网上资料很多,可以参考蒋金楠老师的博客http://www.cnblogs.com/artech/archive/2007/02/26/656901.html,我是从这篇博客开始学习的 ...
- thinkphp中assign()和display()区别和用法
- 【算法和数据结构】_12_小算法_abs_fabsf_fabsd_大端小端判断
最近学习要用到求绝对值函数,看了一下有很多种的abs函数,因此想自己实现这些代码. 下面是我进行测试的代码: #include <stdio.h> typedef unsigned int ...