.net 分页案例效果
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 分页案例效果的更多相关文章
- 仿淘宝分页按钮效果简单美观易使用的JS分页控件
分页按钮思想: 1.少于9页,全部显示 2.大于9页,1.2页显示,中间页码当前页为中心,前后各留两个页码 附件中有完整例子的压缩包下载.已更新到最新版本 先看效果图: 01输入框焦点效果 ...
- 关于csdn博客中案例效果的动态演示
在曾经一篇博文中,网友评论说要是案例效果是动态演示的就好了,我认为说的非常是有道理.由于一个简单的截图不能非常好的展示案例效果.要是有一张gif图能动态的播放案例效果就再好只是了.在这里提供一个小软件 ...
- Jquery 分页案例
Jquery 分页案例 <!DOCTYPE html> <html> <head> <meta charset="utf-8" /& ...
- php分页类代码带分页样式效果(转)
php分页类代码,有漂亮的分页样式风格 时间:2016-03-16 09:16:03来源:网络 导读:不错的php分页类代码,将类文件与分页样式嵌入,实现php查询结果的精美分页,对研究php分页原理 ...
- WordPress实现长篇文章/日志/单页面分页功能效果
在WordPress里写文章,如果内容很多,你可能想要把文章分成几页来让访客浏览,这样既保持了网页的美观,也提高了网页的打开速度.但是在WordPress默认提供的按钮里,你可能找不到文章分页功能所对 ...
- jquery自定义插件来实现分页的效果
本节将介绍如何定义自己的jquery插入,实现分页效果,话不多说,.看看达到的效果: 分页插件 实现的代码例如以下: <!DOCTYPE HTML PUBLIC "-//W3C//DT ...
- oracle函数案例以及分页案例
--日期函数select sysdate from dual--返回两个日期select months_between(to_date('2017-1-7','yyyy-mm-dd'),to_date ...
- Servlet+jsp的分页案例
查询的分页,在web中经常用到.一般,分页要维护的信息很多,我们把这些相关的信息,分装到一个类中,PageBean.具体如下: package cn.itcast.utils; import java ...
- 纯JS写动态分页样式效果
效果图如下: html: <body> <div> <table id="btnbox"> <tbody> <tr>&l ...
随机推荐
- bzoj 1196
http://www.lydsy.com/JudgeOnline/problem.php?id=1196 二分+并查集 一共有2*M条路径,我们首先将这2*M条路径按费用排序. 然后二分最大费用的公路 ...
- C#中dynamic、ExpandoObject 的正确用法
原文地址:http://www.cnblogs.com/qiuweiguo/archive/2011/08/03/2125982.html dynamic是FrameWork4.0的新特性.dynam ...
- c语言else匹配问题
#include <stdio.h> #include <stdlib.h> //实现 依次输入三个递增的数 然后正确输出 //为什么得不到我们想要的结果呢 这就是else匹配 ...
- 将Maven项目转换成Eclipse支持的Java项目
当我们通过模版(比如最简单的maven-archetype-quikstart插件)生成了一个maven的项目结构时,如何将它转换成eclipse支持的java project呢? 1. 定位到mav ...
- [原创作品] Express 4.x 接收表单数据
好久没有写博客,从现在开始,将介绍用nodejs进行web开发的介绍.欢迎加群讨论:164858883. 之前的express版本在接收表单数据时,可以统一用res.params['参数名'],但在4 ...
- Android Fragment详解(六):Fragement示例
把条目添加到动作栏 你的fragment们可以向activity的菜单(按Manu键时出现的东西)添加项,同时也可向动作栏(界面中顶部的那个区域)添加条目,这都需通过实现方法onCreateOptio ...
- STM32外部中断具体解释
一.基本概念 ARM Coetex-M3内核共支持256个中断,当中16个内部中断,240个外部中断和可编程的256级中断优先级的设置.STM32眼下支持的中断共84个(16个内部+68个外部), ...
- C# byte[]与char[]、string与char[]、byte[] 与 string 互转
1. byte array -> char array Byte[] b=new byte[5]{0x01,0x02,0x03,0x04,0x05}; Char[] c=Encoding.AS ...
- Parser Error Message: Access is denied【转】
PRB: Access Denied Error When You Make Code Modifications with Index Services Running View products ...
- sql 合并列
1.合并一列用“ ,”号隔开. 如下图: 这样的一列我想直接在sql里面合并最后变成:586,444,444,444,444这样的效果,平常的做法是直接把这列数据取出来,在前端循环加上逗号,但其实是可 ...