Asp.Net:一個通用分頁函數

來源:互聯網
上載者:User
功能:
1.每頁設定顯示9頁,超過9頁,點5頁後的+1頁顯示(可以隨便修改)
2.CSS樣式自己可以設定
3.無任何咋代碼產生,利於搜尋引擎最佳化

//分頁程式
        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();

//Aspx檔案:

分頁部分:

  <div align="center"> <asp:HyperLink ID="linkFirstPage" runat="server" Font-Underline="False">首頁 </asp:HyperLink>&lt;&lt;
                <asp:HyperLink ID="linkPre" runat="server" Font-Underline="False">上一頁 </asp:HyperLink>
            <asp:Literal ID="yemsl" runat="server"> </asp:Literal>
                <asp:HyperLink ID="linkNext" runat="server" Font-Underline="False">下一頁 </asp:HyperLink>&nbsp; &nbsp;
                    &gt;&gt; <asp:HyperLink
                    ID="linkEndPage" runat="server" Font-Underline="False">尾頁 </asp:HyperLink>| <asp:Literal
                        ID="tjixx" runat="server"> </asp:Literal> </div>

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.