打印

[NET精华教程] .net教程:最简单的asp.net分页

.net教程:最简单的asp.net分页

using system;
using system.data;
using system.configuration;
using system.web;
using system.web.security;
using system.web.ui;
using system.web.ui.webcontrols;
using system.web.ui.webcontrols.webparts;
using system.web.ui.htmlcontrols;
/// <summary>
/// lveasypager 的摘要说明
/// </summary>
public class lveasypager
{
  /// <summary>
  /// 呵呵,最简单的分页,2006.11.21
  /// 普通情况下我用自己的分页控件
  /// 但这次情况不一样,所以写了一个小函数,用ul,li标签,样式就自己定义吧
  /// ewebapp.cnblogs.com
  /// www.lvjiyong.com
  /// </summary>
  public lveasypager()
  {
    //
    // todo: 在此处添加构造函数逻辑
    //

  }
  /// <summary>
  /// 最简单的分页
  /// </summary>
  /// <param name="url">格式化url,abc.com/page/{0}</param>
  /// <param name="abs">当前页</param>
  /// <param name="pagesize">每页记录数</param>
  /// <param name="total">总记录数</param>
  /// <returns></returns>
  public static string create(string url, int abs,int pagesize, int total)
  {
    if (total <= pagesize) return null;
    string jiyong = string.empty;
    string urlformat = @"<li class=""{0}"" ><a href=""{1}""  >{2}</a></li>";
    string urlformat2 = @"<li class=""{0}"" {3}>{2}</li>";
    int pagenum = total / pagesize;
    if (total % pagesize > 0) pagenum++;
    //httpcontext.current.response.write(pagenum.tostring());
    //.首页
    if (abs <= 1)
    {
      //jiyong += "<li class="p10"><a href="" + string.format(url, abs) + "">;
      jiyong += string.format(urlformat2, "first", string.format(url, "1"), "<a><<</a>", "disabled="true"");
    }
    else
    {
      jiyong += string.format(urlformat, "first", string.format(url, "1"), "<<", "");
    }
    //上一页
    if (abs < 1) abs = 1;
    if (abs == 1)
    {
      //jiyong += "<li class="p10"><a href="" + string.format(url, abs) + "">;
      jiyong += string.format(urlformat2, "pre", string.format(url, (abs - 1).tostring()), "<a><</a>", "disabled="true"");
    }
    else
    {
      jiyong += string.format(urlformat, "pre", string.format(url, (abs-1).tostring()), "<", "");
    }
    //loop
    int pre = abs - 5;
    if (pre <= 0)
    {
      pre = 1;
    }
    for (int i = pre; i < abs; i++)
    {
      jiyong += string.format(urlformat, "page", string.format(url, i.tostring()), i.tostring(), "");
    }

    //当前页
    jiyong += string.format(urlformat2, "abs", string.format(url, abs.tostring()), "<a>" + abs.tostring() + "</a>", "disabled="true"");
  
    //loop下5页
    int next = abs + 5;
    if (next > pagenum) next = pagenum;
    for (int i = abs+1; i < next+1; i++)
    {
      jiyong += string.format(urlformat, "page", string.format(url, i.tostring()), i.tostring(), "");
    }

    //下一页
    if (abs == pagenum)
    {
      //jiyong += "<li class="p10"><a href="" + string.format(url, abs) + "">;
      jiyong += string.format(urlformat2, "pre", string.format(url, (abs + 1).tostring()), "<a>></a>", "disabled="true"");
    }
    else
    {
      jiyong += string.format(urlformat, "pre", string.format(url, (abs + 1).tostring()), ">", "");
    }

    //.尾页
    if (abs == pagenum)
    {
      //jiyong += "<li class="p10"><a href="" + string.format(url, abs) + "">;
      jiyong += string.format(urlformat2, "last", string.format(url, pagenum.tostring()), "<a>>></a>", "disabled="true"");
    }
    else
    {
      jiyong += string.format(urlformat, "last", string.format(url, pagenum.tostring()), ">>", "");
    }
    return jiyong;
  }
}
http://www.cnblogs.com/ewebapp/archive/2006/11/30/577504.html
  



TOP

返回顶部
AYBlue

Processed in 0.048159 second(s), 7 queries.

当前时区 GMT+8, 现在时间是 2009-1-8 15:32 京ICP备06054220号

清除 Cookies - 联系我们 - 163K.com - Archiver - WAP