zoukankan      html  css  js  c++  java
  • asp.net文章内容分页方法

    #region Html内容分页处理函数
            /// <summary>
            /// Html内容分页处理函数 
            /// </summary>
            /// <param name="strBody">要分页的内容</param>
            /// <param name="strSplitString">分隔字符串</param>
            /// <param name="pageIndexName">页面索引参数名</param>
            /// <param name="patter">链接匹配模式</param>
            /// <param name="isAppendHeadEnd">是否追加第一页和最后一页</param>
            /// <returns></returns>
            public static string CreateContentPager(ref string strBody,
                                        string strSplitString,
                                        string pageIndexName,
                                        string patter,
                                        bool isAppendHeadEnd)
            {
                string[] strBodyArray = strBody.Split(new string[] { strSplitString }, StringSplitOptions.None);
                //分页内容
                StringBuilder strHtmlPager = new StringBuilder();
                int currentPageIndex = 1; //当前页页码
                int pageCount = strBodyArray.Length;//总页数
                if (!string.IsNullOrEmpty(HttpContext.Current.Request[pageIndexName]))
                {
                    currentPageIndex = CommonFunction.getInteger(HttpContext.Current.Request[pageIndexName]);
                }
                //无需分页
                if (pageCount == 1)
                {
                    return null;
                }
                //开始分页处理
                if (isAppendHeadEnd)
                {
                    if (currentPageIndex == 1)
                    {
                        strHtmlPager.AppendLine();
                        strHtmlPager.Append("<b>[第一页]</b>");
                    }
                    else
                    {
                        strHtmlPager.AppendLine();
                        strHtmlPager.Append(patter.Replace("{0}", 1.ToString()).Replace("{1}", "第一页"));
                    }
                }
                //页头
                if (currentPageIndex > 1)
                {
                    //显示上一页
                    strHtmlPager.AppendLine();
                    strHtmlPager.Append(patter.Replace("{0}", (currentPageIndex - 1).ToString()).Replace("{1}", "上一页"));
                }
                else
                {
                    if (currentPageIndex == 1)
                    {
                        strHtmlPager.AppendLine();
                        strHtmlPager.Append("<b>[上一页]</b>");
                    }
                }
                //开始分页
                for (int i = 1; i <= pageCount; i++)
                {
                    //如果 当前页索引=页码的话,执行操作标示当前页码
                    if (i == currentPageIndex)
                    {
                        strHtmlPager.AppendLine();
                        strHtmlPager.AppendFormat("<b>[{0}]</b>", i);
                    }
                    else
                    {
                        strHtmlPager.AppendLine();
                        strHtmlPager.AppendFormat(patter.Replace("{0}", i.ToString()).Replace("{1}", i.ToString()));
                    }
                }
                //页尾
                if (currentPageIndex + 1 > pageCount)
                {
                    strHtmlPager.AppendLine();
                    strHtmlPager.Append("<b>[下一页]</b>");
                }
                else
                {
                    strHtmlPager.AppendLine();
                    strHtmlPager.Append(patter.Replace("{0}", (currentPageIndex + 1).ToString()).Replace("{1}", "下一页"));
                }
                if (isAppendHeadEnd)
                {
                    if (currentPageIndex == pageCount)
                    {
                        strHtmlPager.AppendLine();
                        strHtmlPager.Append("<b>[已经是最后一页]</b>");
                    }
                    else
                    {
                        strHtmlPager.AppendLine();
                        strHtmlPager.Append(patter.Replace("{0}", pageCount.ToString()).Replace("{1}", "最后一页"));
                    }
                }
                strBody = strBodyArray[currentPageIndex - 1];
                return strHtmlPager.ToString();
            }
            #endregion
    用心写代码,不辜负程序员之名。
  • 相关阅读:
    java 笔记(2) 接口作为引用数据类型
    linux 笔记(5)让vi或vim显示行数和不显示行数
    linux 笔记(4)Ubuntu 使用时vi编辑器时,不能使用backspace键来进行退格或者不能正常使用
    linux 笔记(3)sudo passwd 设置root用户的密码
    matlab笔记(1) 元胞结构cell2mat和num2cell
    linux 笔记(2) 目录直接强行删除rm -rf *(删除当前目录所有的内容)
    linux 笔记(1) ctrl+c,ctrl+z,ctrl+d
    C51单片机项目:红绿灯
    C51单片机项目:时钟
    java 笔记(1)在子类中,一定要访问父类的有参构造方法?
  • 原文地址:https://www.cnblogs.com/thinkingthigh/p/3126662.html
Copyright © 2011-2022 走看看