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 分页控件(二) 上一章主要是关于分页控件的原理,代码也没有重构.在这一章会附上小插件的下载链接,插件主要就是重构逻辑部分,具体可以下载源文件看下,源代码也有注释.为了测试这个插件是能用的 ...
随机推荐
- C语言打印记事本内搜索字符串所在行信息
本程序采用C语言编写,使用方法: 1.双击“甲骨文字符串查询作品.exe”运行程序; 2.运行前请确保此可执行程序目录下有1.txt文件. 3.根据提示输入一个字符串,程序将显示存在所搜索字符串的所有 ...
- kafka设计原理介绍
背景介绍 Kafka简介 Kafka是一种分布式的,基于发布/订阅的消息系统.主要设计目标如下: 以时间复杂度为O(1)的方式提供消息持久化能力,即使对TB级以上数据也能保证常数时间的访问性能 高吞吐 ...
- 利用ListView的基本方法实现效果
日常的开发工作经常需要ListView作为布局的组件,而且很多时候都会遇到需要自定义ListView的情况. 也有些问题并不需要自定义的ListView,基于原生的ListView就能实现,但需要灵活 ...
- Elasticsearch——Search的基本介绍
Elasticsearch最常用的方法莫过于查询了.Es支持以URI请求参数或者请求体的方式进行查询. 查询范例 Elasticsearch支持对多索引以及多类型进行查询. 比如,下面对某个特定索引的 ...
- c# 多线程系列二 自定义线程执行器
看了第一篇文章,多线程系列,看到了在线程执行任务队列有了一定的了解~! 那么今天我来讲讲,怎么样构建通用的自定义线程概念! 线程执行任务,肯定要有目标,但是如果写死了,那么一个线程处理执行职能按照思路 ...
- 使用redis和fastjson做应用和mysql之间的缓存
第一次做这种javaweb的项目,难免还是要犯很多错误. 大概也知道,redis常常被用来做应用和mysql之间的缓存.模型大概是这样子的. 为了让redis能够缓存mysql数据库中的数据,我写了很 ...
- 【转】nginx+iis实现负载均衡
最近在研究分布式系统架构方面的知识,包括负载均衡,数据库读写分离,分布式缓存redis等.本篇先从负载均衡服务架构入手,关于负载均衡百度百科的定义如下:负载均衡,英文名称为Load Balance,其 ...
- 【SQL】SQL2012离线帮助文档安装不上的处理手记
注:解决方法在最后,心急的童鞋可以直接往下滚动. 我SQL实例装的是2008 R2版,由于该版自带的SSMS(Microsoft SQL Server Management Studio 管理工具)存 ...
- Debian7编译VIM7.4
[ 另: vim7.4源码在vs2013的编译方法 ] 1 安装libncurses5库: apt-get install libncurses5-dev 2 安装gvim需要的库: 方法一: apt ...
- 第 14 章 CSS 颜色与度量单位
学习要点: 1.颜色表方案 2.度量单位 主讲教师:李炎恢 本章主要探讨 HTML5 中 CSS 颜色和度量单位等问题,包括颜色的选取方式.相对长度和绝对长度等. 一.颜色表方案 颜色的表现形式主要有 ...