zoukankan      html  css  js  c++  java
  • 分享一个通用分页函数

    功能:
    1.每页设置显示9页,超过9页,点5页后的+1页显示(可以随便修改)
    2.CSS样式自己可以设置
    3.无任何咋代码产生,利于搜索引擎优化
    4.至于性能怎么样大家可以试下

    演示地址:http://www.dzswej.com/newslist_ej4.html


    PagedDataSource objPDS;
    ......

    //分页程序
            objPDS = new PagedDataSource();
            objPDS.DataSource = dtTable.DefaultView;//绑定数据源
            objPDS.AllowPaging = true;
            objPDS.PageSize =10;//分页数目
            int curPage;
            int cshi;
            int jshi;
            int zyes = Int32.Parse( objPDS.PageCount.ToString());
            this.tjixx.Text = "总共 <font color=red>" + dtTable.Rows.Count + " </font>条信息";
            this.tjixx.Text += "|共 <font color=red>" + zyes + " </font>页";
            if (Request.QueryString["Page"] != null)
            {
                if (Int32.Parse(Request.QueryString["Page"]) > zyes)
                    curPage = zyes;
                else
                curPage = Int32.Parse(Request.QueryString["Page"]);
            }

            else
            {
                curPage = 1;
            }
         

            if (zyes <= 9)
            {
                cshi = 1;
                jshi = zyes;

            }
            else
            {
                if (curPage <= 5)
                {
                    cshi = 1;
                    jshi = 9;

                }

            else
            {

                cshi = curPage - 4;
                int jshils = curPage + 4;
                if (jshils > zyes)
                    jshi = zyes;
                else
                    jshi=curPage + 4;


            }
            }
            objPDS.CurrentPageIndex = curPage - 1;
            StringBuilder m_strPageInfo = new StringBuilder();
            for (int i = cshi; i <=jshi; i++)
            {
                if (i == Int32.Parse(curPage.ToString()))
                    m_strPageInfo.Append(" <span class=\"dqye\"> <strong>" + i + " </strong> </span>  ");
                else
                    m_strPageInfo.Append(" <span class=\"qtye\"> <strong> <a  href=\"newslist_ej" + Request.QueryString["wzcat"] + "_Page" + i + ".html\">" + i + " </a> </strong> </span> ");
            }
            this.yemsl.Text = m_strPageInfo.ToString();

            if (!objPDS.IsFirstPage)
            {


                linkPre.NavigateUrl = "newslist_ej" + Request.QueryString["wzcat"] + "_Page" + Convert.ToString(curPage - 1);
                linkPre.NavigateUrl += ".html";
            }
            if (!objPDS.IsLastPage)
            {
                linkNext.NavigateUrl = "newslist_ej" + Request.QueryString["wzcat"] + "_Page" + Convert.ToString(curPage + 1);
                linkNext.NavigateUrl += ".html";
            }
            linkFirstPage.NavigateUrl = "newslist_ej" + Request.QueryString["wzcat"] + "_Page1";
            linkFirstPage.NavigateUrl += ".html";
            linkEndPage.NavigateUrl = "newslist_ej" + Request.QueryString["wzcat"] + "_Page" + objPDS.PageCount.ToString();
            linkEndPage.NavigateUrl += ".html";
            this.DataList4.DataSource = objPDS;//绑定分页的数据
            this.DataList4.DataBind();
  • 相关阅读:
    用Ghost进行备份还原
    虚拟机出现“操作文件.PhysicalDrive1失败”的解决方法
    用typedef定义函数指针的问题
    模拟搭建Web项目的真实运行环境(七)
    模拟搭建Web项目的真实运行环境(六)
    模拟搭建Web项目的真实运行环境(五)
    模拟搭建Web项目的真实运行环境(四)
    javascript JS CryptoJS DES加解密CBC模式与C#DES加解密相同互通
    在gridControl的单元格中的多行文本
    Devexpress Winform Gridcontrol 中根据条件单元格的值改变单元格的颜色等属性。
  • 原文地址:https://www.cnblogs.com/gengaixue/p/1350362.html
Copyright © 2011-2022 走看看