分页代码

分页样式如下:


分页效果
public class Qtpager
{
    /// 
    /// 分页代码
    /// 
    /// 每页显示条数
    /// 当前页码
    /// 数据总条数
    /// 
    public static string ShowPage(int pagesize, int currentpage,int totalcount)
    {
        pagesize = pagesize <= 0 ? 15 : pagesize;//默认每页15条数据
        var totalpage = Math.Max((totalcount + pagesize - 1)/pagesize, 1);//总页数
        var output = new StringBuilder();

        if (totalpage <= 10)//总页数小于10,按页码全部显示
        {
            if (currentpage > totalpage)
            {
                output.AppendFormat("{0}", 1);
            }
            else
            {
                output.AppendFormat("{0}", 1);
            }
            for (int i = 2; i <= totalpage; i++)
            {
                if (i == currentpage)
                {
                    output.AppendFormat("{0}", i);
                }
                else
                {
                    output.AppendFormat("{0}", i);
                }
            }
        }
        else//总页数大于10,显示当前页的前后三页、首页、最后一页
        {
            if(currentpage<=3)
            {
                for (int i = 1; i < currentpage; i++)
                {
                    output.AppendFormat("{0}", i);
                }
                output.AppendFormat("{0}", currentpage);
            }
            else
            {
                output.Append("1");
                output.Append("...");
                output.AppendFormat("{0}", currentpage - 3);
                output.AppendFormat("{0}", currentpage - 2);
                output.AppendFormat("{0}", currentpage - 1);
                output.AppendFormat("{0}", currentpage);
            }
            if (totalpage - currentpage > 3)
            {
                output.AppendFormat("{0}", currentpage + 1);
                output.AppendFormat("{0}", currentpage + 2);
                output.AppendFormat("{0}", currentpage + 3);
                output.Append("...");
                output.AppendFormat("{0}", totalpage);
            }
            else
            {
                for (int i = currentpage + 1; i <= totalpage; i++)
                {
                    output.AppendFormat("{0}", i);
                }
            }
        }
        return output.ToString();
    }
}

前台代码:


样式表:

    .pageNav{height:40px;margin:50px auto 20px auto; width:500px; clear:both; text-align:center}
    .pagelist {text-align:center; font-size:14px}
    .pagelist a{padding:3px 6px; margin:2px;text-decoration:none; color:#777}
    .pagelist a:hover,.pagelist a.current{background-color:#ec6d1e;color: #fff !important;border-radius: 5px;}
    .pagelist a:active{color:#000}
    .pagelist span.disabled{padding:3px 6px}

你可能感兴趣的:(分页代码)