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 分页控件(二) 上一章主要是关于分页控件的原理,代码也没有重构.在这一章会附上小插件的下载链接,插件主要就是重构逻辑部分,具体可以下载源文件看下,源代码也有注释.为了测试这个插件是能用的 ...
随机推荐
- JAVA之IO文件读写
IO概述: IO(Input output)流 作用:IO流用来处理设备之间的数据传输 ...
- Azure Automation (4) 按照Azure虚拟机的机器名,设置开关机
<Windows Azure Platform 系列文章目录> 本文介绍的是国内由世纪互联运维的Azure China服务. 在有的时候,我们不需要将所有的虚拟机进行开关机. 本文介绍的脚 ...
- resin4 发布war包
1.将web项目打包成xxxx.war 2.将war包放到webapps下 3.修改conf/resin.xml文件如下部分: <!-- - Configures the main applic ...
- 深度浅出immutable.js
这篇文章将讲述immutable.js的基本语法和用法. 1.fromJs() Deeply converts plain JS objects and arrays to Immutable Ma ...
- Winform开发框架中实现同时兼容多种数据库类型处理
在很多应用系统里面,虽然一般采用一种数据库运行,但是由于各种情况的需要,可能业务系统会部署在不同类型的数据库上,如果开发的系统能够很方便支持多种数据库的切换,那可以为我们减少很多烦恼,同时提高系统的适 ...
- ASP.NET MVC 请求流程:Route
1.RouteTable RouteTable翻译过来的意思就是路由表,一个Web应用程序具有一个全局的路由表,该路由表通过System.Web.Routiing.RouteTable的静态只读属性R ...
- Nancy 自定义JsonSerializer
1.创建自己的jsonserializer类 public class CustomJsonNetSerializer : JsonSerializer, ISerializer { public C ...
- Sql Server中常见的数据类型
转至http://www.cnblogs.com/andy_tigger/archive/2011/08/21/2147745.html bit 整型 bit数据类型是整型,其值只能是0.1或空 ...
- Oracle的建立表格
找到table右键点击,选择新建: 输入名称,用拼音或者英文,中文容易出现错误.输入完名称选择列: 列也写好名称,类型可以选择,VARCHAR2()是字符串类型,括号里面写数字代表长度,英文字母和数字 ...
- spring,mybatis,多数据源配置
spring.xml配置 <!-- 对数据源进行事务管理 --> <bean id="transactionManager" class="org.sp ...