• OA项目之分页


    using System;
    using System.Collections.Generic;
    using System.Linq;
    using System.Web;

    namespace DigitalCampus.Web.Common
    {
        public class PageFuntion
        {
            /// <summary>
            /// 分页
            /// </summary>
            /// <param name="DataCount">数据总数</param>
            /// <param name="pageSize">每页显示数据数</param>
            /// <param name="CurrentPage">当前页码</param>
            /// <param name="para">传参</param>
            /// <param name="pageName">页面</param>
            /// <returns></returns>
            public static string GetStrPage(int DataCount, int pageSize, int CurrentPage, string para)
            {
                //得到总页数

                double tempcount = Math.Ceiling(Double.Parse(DataCount.ToString()) / Double.Parse(pageSize.ToString()));
                int pageCount = int.Parse(tempcount.ToString());

                string strPage = string.Empty;
                double pf = Math.Ceiling(double.Parse(CurrentPage.ToString()) / 10);
                int ptotemp = 0;
                int pfrom = int.Parse(pf.ToString());
                int pto = pfrom * 10;

                if (CurrentPage == 1)
                {
                    strPage += "<li class="active"><a href='javascript:void(0);'>首 页</a></li>";
                }
                else
                {
                    strPage += "<li><a href='?pNum=1";
                    strPage += para;
                    strPage += "'>首 页</a></li>";
                }
                //上一页
                if (CurrentPage <= 1)
                {
                    strPage += "<li class="active"><a href='javascript:void(0);'>上一页</a></li>";
                }
                else
                {
                    strPage += "<li><a href ='?pNum=" + (CurrentPage - 1 + para) + "' >上一页</a></li>";
                }
                //上一组
                if ((pto - 10) > 0)
                {
                    strPage += "<li><a href='?pNum=" + (pto - 10) + para + "'>...</a></li>";
                }
                else
                {
                    //strPage += " ...&nbsp;";
                }
                //总页数与组最大最比较
                if (pto > pageCount)
                {
                    ptotemp = pageCount;
                }
                else
                {
                    ptotemp = pto;
                }
                //显示面码
                for (int i = pto - 9; i <= ptotemp; i++)
                {
                    if (i == CurrentPage)
                    {
                        strPage += "<li class="active"><a href='javascript:void(0);'>" + i + "</a></li>";
                    }
                    else
                    {
                        strPage += "<li><a href='?pNum=" + i + para + "'>" + i + "</a></li>";
                    }
                }
                //下一组
                if ((pto) < pageCount)
                {
                    strPage += "<li><a href='?pNum=" + (pto + 1) + para + "'>...</a></li>";
                }
                else
                {

                }
                //下一页
                if (CurrentPage >= pageCount)
                {
                    strPage += "<li class="active"><a href='javascript:void(0);'>下一页</a></li>";
                }
                else
                {
                    strPage += "<li><a href ='?pNum=" + (CurrentPage + 1) + para + "' >下一页</a></li>";
                }

                int page = 0;
                if (DataCount % pageSize != 0)
                {
                    page = DataCount / pageSize + 1;
                }
                else
                {
                    page = DataCount / pageSize;
                }

                if (CurrentPage == page || page == 0)
                {
                    strPage += "<li class="active"><a href='javascript:void(0);'>末 页</a></li>";
                }
                else
                {
                    strPage += "<li><a href='?pNum=";
                    strPage += page + para;
                    strPage += "'>末 页</a></li>";
                }
                strPage += "<li class="active"><a href='javascript:void(0);'>共" + DataCount + "条数据</a></li>";
                strPage += "<li class="active"><a href='javascript:void(0);'>页码:" + CurrentPage + "/" + page + "</a></li>";
                //string[] strPArray = new string[] { "10", "15", "20", "30", "50" };
                //string strP = string.Empty;
                //for (int i = 0; i < strPArray.Length; i++)
                //{
                //    string strSelected = string.Empty;
                //    strSelected = pageSize.ToString() == strPArray[i].ToString() ? "selected" : "";
                //    strP += "<option value='" + strPArray[i] + "' " + strSelected + ">" + strPArray[i] + "</option> ";
                //}

                //strPage += "<li><span  class="spanfont">显示:</span><select class="select1" onchange="PageSizeChange('" + pageName + "?" + para + "',this);">" + strP + "</select></li>";
                return strPage;
            }

            /// <summary>
            /// 分页 JS跳转
            /// </summary>
            /// <param name="DataCount">数据总数</param>
            /// <param name="pageSize">每页显示数据数</param>
            /// <param name="CurrentPage">当前页码</param>
            /// <param name="para">传参</param>
            /// <param name="pageName">页面</param>
            /// <returns></returns>
            public static string GetStrPage2(int DataCount, int pageSize, int CurrentPage, string para)
            {
                //得到总页数

                double tempcount = Math.Ceiling(Double.Parse(DataCount.ToString()) / Double.Parse(pageSize.ToString()));
                int pageCount = int.Parse(tempcount.ToString());

                string strPage = string.Empty;
                double pf = Math.Ceiling(double.Parse(CurrentPage.ToString()) / 6);
                int ptotemp = 0;
                int pfrom = int.Parse(pf.ToString());
                int pto = pfrom * 6;

                if (CurrentPage == 1)
                {
                    strPage += "<li class="active"><a href='javascript:void(0);'>首 页</a></li>";
                }
                else
                {
                    strPage += "<li><a href='javascript:void(0);' onclick="UcPageChange('1','" + pageSize + "');">首 页</a></li>";
                }
                //上一页
                if (CurrentPage <= 1)
                {
                    strPage += "<li class="active"><a href='javascript:void(0);'>上一页</a></li>";
                }
                else
                {
                    strPage += "<li><a href ='javascript:void(0);' onclick="UcPageChange('" + (CurrentPage - 1) + "','" + pageSize + "');">上一页</a></li>";
                }
                //上一组
                if ((pto - 6) > 0)
                {
                    strPage += "<li><a href='javascript:void(0);' onclick="UcPageChange('" + (pto - 6) + "','" + pageSize + "');">...</a></li>";
                }
                else
                {
                    //strPage += " ...&nbsp;";
                }
                //总页数与组最大最比较
                if (pto > pageCount)
                {
                    ptotemp = pageCount;
                }
                else
                {
                    ptotemp = pto;
                }
                //显示面码
                for (int i = pto - 5; i <= ptotemp; i++)
                {
                    if (i == CurrentPage)
                    {
                        strPage += "<li class="active"><a href='javascript:void(0);'>" + i + "</a></li>";
                    }
                    else
                    {
                        strPage += "<li><a href='javascript:void(0);' onclick="UcPageChange('" + (i) + "','" + pageSize + "');">" + i + "</a></li>";
                    }
                }
                //下一组
                if ((pto) < pageCount)
                {
                    strPage += "<li><a href='javascript:void(0);' onclick="UcPageChange('" + (pto + 1) + "','" + pageSize + "');">...</a></li>";
                }
                else
                {

                }
                //下一页
                if (CurrentPage >= pageCount)
                {
                    strPage += "<li class="active"><a href='javascript:void(0);'>下一页</a></li>";
                }
                else
                {
                    strPage += "<li><a href ='javascript:void(0);' onclick="UcPageChange('" + (CurrentPage + 1) + "','" + pageSize + "');">下一页</a></li>";
                }

                int page = 0;
                if (DataCount % pageSize != 0)
                {
                    page = DataCount / pageSize + 1;
                }
                else
                {
                    page = DataCount / pageSize;
                }
                if (CurrentPage == page || page == 0)
                {
                    strPage += "<li class="active"><a href='javascript:void(0);'>末 页</a></li>";
                }
                else
                {
                    strPage += "<li><a href='javascript:void(0);'  onclick="UcPageChange('" + page + "','" + pageSize + "');">末 页</a></li>";
                }

                strPage += "<li class="active"><a href='javascript:void(0);'>共" + DataCount + "条数据</a></li>";
                strPage += "<li class="active"><a href='javascript:void(0);'>页码:" + CurrentPage + "/" + page + "</a></li>";
                return strPage;
            }

        }
    }

  • 相关阅读:
    git切换分支报错解决
    网上看到的一个布局神器
    js获取滚动条,文档,浏览器高度
    使用iView-cli创建一个pc端网页(1)
    ajax详解与用途
    JavaScript中for/in和for的区别
    排序
    Java中getResourceAsStream的用法
    java程序打包成exe的总结
    使用7zip把jre集成到绿色运行程序内
  • 原文地址:https://www.cnblogs.com/james1207/p/3292262.html
Copyright © 2020-2023  润新知