string path_query = "RigthAdvent.aspx?";#region 分页

        /// <summary>
        /// 分页代码
        /// </summary>
        /// <param name="totalResult">总的结果条数</param>
        /// <param name="pageSize">每一页的大小</param>
        /// <param name="currentPage">当前页码</param>
        /// <returns>分页的html</returns>
        public string Paging(double totalResult, int pageSize, int currentPage)
        {
            //在形如“上一页 1 ... 4 5 6 7 8 ... 100 下一页”的分页效果中,
            //leftNum = 4,相应的rightNum = 8; currentPage = 6; step = 2(从4到6间的差叫做step)             string pageUrl = "";
            //左右延伸个数
            int step = ;             int leftNum;
            int rightNum;             //总页数
            string allshuju = totalResult.ToString();
            int totalPageCount = (int)Math.Ceiling(totalResult / pageSize);             //是否显示上一页
            if (currentPage > )
            {
                pageUrl += "<a href='" + path_query + "page=" + (currentPage - ) + "'>上一页</a>";
            }             //此时应该这样显示页码 上一页 1 ...  5 6 7 8 9 ... 100 下一页
            //即当前浏览的页数在中间几页
            if ((currentPage - step) >  && (totalPageCount > step *  + ))
            {                 //第一页
                pageUrl += "<a href='" + path_query + "page=1'>1</a>";                 //标识变量,标识当前页是否是倒数几页,该变量在下面会用到
                bool isLastFiewPages = false;                 //判断是否是倒数后几页
                if (currentPage + (step *  +  + ) > totalPageCount)
                {
                    leftNum = totalPageCount - (step *  + );
                    rightNum = totalPageCount;
                    isLastFiewPages = true;
                }
                else
                {
                    leftNum = currentPage - step;
                    rightNum = currentPage + step;
                }                 if (leftNum -  > )
                {
                    pageUrl += "<span>...</span>";
                }                 //拼装分页代码
                for (int i = leftNum; i <= rightNum; i++)
                {
                    if (i == currentPage)
                    {
                        //当前页 
                        pageUrl = pageUrl + "<span class='currentpage'>" + i + "</span>";
                    }
                    else
                    {
                        //有连接
                        pageUrl = pageUrl + "<a href='" + path_query + "page=" + i + "'>" + i + "</a>";
                    }
                }
                //最后一页
                if (!isLastFiewPages)
                {
                    pageUrl += "<span>...</span><a href='" + path_query + "page=" + totalPageCount + "'>" + totalPageCount + "</a>";
                }             }
            //此时应该这样显示页码 上一页 1 2 3 4 5 6 ... 100 下一页或者
            //当总页数小于或等于(2 * step + 1 + 1)的时候应该这样显示 上一页 1 2 3 4 5 下一页
            else
            {
                if (currentPage <= )
                {
                    currentPage = ;
                }                 leftNum = ;
                //rightNum总页数和step * 2 + 1 + 1中较小的那个,
                rightNum = totalPageCount < (step *  +  + ) ? totalPageCount : (step *  + );                 for (int i = leftNum; i <= rightNum; i++)
                {
                    if (i == currentPage)
                    {
                        pageUrl += "<span class='currentpage'>" + currentPage + "</span>";
                    }
                    else
                    {
                        pageUrl += "<a href='" + path_query + "page=" + i + "'>" + i + "</a>";
                    }
                }                 //如果总条数大于前几页连续显示的条数需要这样显示 上一页 1 2 3 4 5 6 ... 100 下一页
                if (totalPageCount > (step *  + ))
                {
                    if (totalPageCount -  > rightNum)
                    {
                        pageUrl += "<span>...</span>";
                    }
                    pageUrl += "<a href='" + path_query + "page=" + totalPageCount + "'>" + totalPageCount + "</a>";
                }
            }
            int tempxia = currentPage + ;
            int tempqian = currentPage - ; ;
            if (tempxia >= totalPageCount)
            {
                tempxia = totalPageCount;
            }
            if (tempqian <= )
            {
                tempqian = ;
            }
            pageShow = @"<a href='" + path_query + "page=" + tempxia + "'> <img src='images/sdhouse_05.gif' title='下一页'/></a><span>" + currentPage + "/" + totalPageCount + "</span><a href='" + path_query + "page=" + tempqian + "'><img src='images/sdhouse_03.gif' title='上一页'/></a>";             if (currentPage < totalPageCount)
            {
                pageUrl += "<a href='" + path_query + "page=" + (currentPage + ) + "' id='mainnext'>下一页</a>";
            }
            return pageUrl;
        }
        #endregion .pageinglist {
display: block;
height: 50px;
border-top: 1px solid #dedede;
background: #fafafa;
float: right;
margin-right: 15px;
padding-top: 15px;
width: 100%;
}
pageinglist span {
color: #434343;
padding: 6px 10px 6px 10px;
/* background-color: #ff9418; */
border-radius: 3px;
/* border: 1px solid #ff9418; */
float: left;
font-size: 14px;
}
pageinglist a {
margin-left: 4px;
margin-right: 4px;
border: 1px solid #ddd;
padding: 6px 10px 6px 10px;
border-radius: 3px;
float: left;
color: #000;
font-size: 14px;
text-decoration: none;

.net 分页案例效果的更多相关文章

  1. 仿淘宝分页按钮效果简单美观易使用的JS分页控件

    分页按钮思想:  1.少于9页,全部显示  2.大于9页,1.2页显示,中间页码当前页为中心,前后各留两个页码  附件中有完整例子的压缩包下载.已更新到最新版本  先看效果图:  01输入框焦点效果  ...

  2. 关于csdn博客中案例效果的动态演示

    在曾经一篇博文中,网友评论说要是案例效果是动态演示的就好了,我认为说的非常是有道理.由于一个简单的截图不能非常好的展示案例效果.要是有一张gif图能动态的播放案例效果就再好只是了.在这里提供一个小软件 ...

  3. Jquery 分页案例

    Jquery    分页案例 <!DOCTYPE html> <html> <head> <meta charset="utf-8" /& ...

  4. php分页类代码带分页样式效果(转)

    php分页类代码,有漂亮的分页样式风格 时间:2016-03-16 09:16:03来源:网络 导读:不错的php分页类代码,将类文件与分页样式嵌入,实现php查询结果的精美分页,对研究php分页原理 ...

  5. WordPress实现长篇文章/日志/单页面分页功能效果

    在WordPress里写文章,如果内容很多,你可能想要把文章分成几页来让访客浏览,这样既保持了网页的美观,也提高了网页的打开速度.但是在WordPress默认提供的按钮里,你可能找不到文章分页功能所对 ...

  6. jquery自定义插件来实现分页的效果

    本节将介绍如何定义自己的jquery插入,实现分页效果,话不多说,.看看达到的效果: 分页插件 实现的代码例如以下: <!DOCTYPE HTML PUBLIC "-//W3C//DT ...

  7. oracle函数案例以及分页案例

    --日期函数select sysdate from dual--返回两个日期select months_between(to_date('2017-1-7','yyyy-mm-dd'),to_date ...

  8. Servlet+jsp的分页案例

    查询的分页,在web中经常用到.一般,分页要维护的信息很多,我们把这些相关的信息,分装到一个类中,PageBean.具体如下: package cn.itcast.utils; import java ...

  9. 纯JS写动态分页样式效果

    效果图如下: html: <body> <div> <table id="btnbox"> <tbody> <tr>&l ...

随机推荐

  1. URAL 1658

    题目大意:求出T个最小的满足各个位的和为S1,平方和为S2的数.按顺序输出.数的位数大于100或者不存在这样一个数时,输出:No solution. KB     64bit IO Format:%I ...

  2. Entity framework - start

    http://blogs.msdn.com/b/adonet/archive/2010/07/19/absolue-beginners-guide-to-entity-framework.aspx?R ...

  3. [原创作品] Express 4.x 接收表单数据

    好久没有写博客,从现在开始,将介绍用nodejs进行web开发的介绍.欢迎加群讨论:164858883. 之前的express版本在接收表单数据时,可以统一用res.params['参数名'],但在4 ...

  4. windows下绑定线程(进程)到指定的CPU核心

    一个程序指定到单独一个CPU上运行会比不指定CPU运行时快.这中间主要有两个原因:1)CPU切换时损耗的性能.2)Intel的自动降频技术和windows的机制冲突:windows有一个功能是平衡负载 ...

  5. 解决 Google 重定向,体验 Google 本味

    想要体验原汁原味的 Google(google.com),下面的方案是我用过的较方便的方案. 欢迎更正及补充 Chrome 扩展 Chrone 商店有一款禁止重定向的扩展 NoCountryRedir ...

  6. JavaScript 变量类型 保存内存中的位置 和 引用

    1. JavaScript变量 基本类型值在内存中占据固定大小的空间 因此被保存在栈内存中. 从一个变量向另一个变量复制基本来下的值 会创建这个值得一个副本. 引用类型的值是对象 保存在堆内存中. 包 ...

  7. (转)div+css 布局经验 - 最简单的 = 最不变形的(原创技巧)

    站酷几年了 一直饱受其恩泽 尤为感激 一直想奉献些什么 但是苦于水平 苦于奔波 今天静下心来 为大家奉献下 自己的div+css 经验 ,以下观点只代表 深海个人立场 希望为初学者提供一条" ...

  8. Mac_配置adb环境变量

    1.打开终端Terminal. 2.进入HOME目录:命令行输入 echo(这之间有一个空格) $HOME 3.创建.bash_profile文件:命令行输入 touch(这之间有一个空格).bash ...

  9. 全世界最详细的图形化VMware中linux环境下oracle安装(二)【weber出品必属精品】

    <ORACLE 10.2.05版本的升级补丁安装> 首先我们解压 $ unzip p8202632_10205_LINUX.zip 解压后我们会发现多出了个文件夹,他是:Disk1,进入D ...

  10. NSArray使用小结

    http://blog.csdn.net/ms2146/article/details/8654263