• <fieldset id="8imwq"><menu id="8imwq"></menu></fieldset>
  • <bdo id="8imwq"><input id="8imwq"></input></bdo>
    最新文章專題視頻專題問答1問答10問答100問答1000問答2000關鍵字專題1關鍵字專題50關鍵字專題500關鍵字專題1500TAG最新視頻文章推薦1 推薦3 推薦5 推薦7 推薦9 推薦11 推薦13 推薦15 推薦17 推薦19 推薦21 推薦23 推薦25 推薦27 推薦29 推薦31 推薦33 推薦35 推薦37視頻文章20視頻文章30視頻文章40視頻文章50視頻文章60 視頻文章70視頻文章80視頻文章90視頻文章100視頻文章120視頻文章140 視頻2關鍵字專題關鍵字專題tag2tag3文章專題文章專題2文章索引1文章索引2文章索引3文章索引4文章索引5123456789101112131415文章專題3
    問答文章1 問答文章501 問答文章1001 問答文章1501 問答文章2001 問答文章2501 問答文章3001 問答文章3501 問答文章4001 問答文章4501 問答文章5001 問答文章5501 問答文章6001 問答文章6501 問答文章7001 問答文章7501 問答文章8001 問答文章8501 問答文章9001 問答文章9501
    當前位置: 首頁 - 科技 - 知識百科 - 正文

    簡單好用的ASP.NET分頁類(支持AJAX、自定義文字)

    來源:懂視網 責編:小采 時間:2020-11-27 22:38:29
    文檔

    簡單好用的ASP.NET分頁類(支持AJAX、自定義文字)

    簡單好用的ASP.NET分頁類(支持AJAX、自定義文字):在做網站沒用 JS UI控件時 很實用 用法: var ps=new PageString(); /*可選參數*/ ps.SetIsEnglish = true;// 是否是英文 (默認:false) ps.SetIsShowText = true;//是否顯示分頁文字 (默認:true) //ps.TextFormat=
    推薦度:
    導讀簡單好用的ASP.NET分頁類(支持AJAX、自定義文字):在做網站沒用 JS UI控件時 很實用 用法: var ps=new PageString(); /*可選參數*/ ps.SetIsEnglish = true;// 是否是英文 (默認:false) ps.SetIsShowText = true;//是否顯示分頁文字 (默認:true) //ps.TextFormat=

    在做網站沒用 JS UI控件時 很實用

    用法:

    var ps=new PageString();
     
     /*可選參數*/
     
     ps.SetIsEnglish = true;// 是否是英文 (默認:false)
     ps.SetIsShowText = true;//是否顯示分頁文字 (默認:true)
     //ps.TextFormat="" (默認值:《span class=\"pagetext\"》《strong》總共《/strong》:{0} 條 《strong》當前《/strong》:{1}/{2}《/span》)
     //ps.SetPageIndexName Request["pageIndex"](默認值:"pageIndex")
     ps.SetIsAjax = false;// (默認值:"false")
     
     /*函數參數*/
     int total = 10000;
     int pageSize = 10;
     int pageIndex = Convert.ToInt32(Request["pageIndex"]);
     
     var page = ps.ToString(total, pageSize, pageIndex, "/UI/PageStringTest.aspx?");
     
     //獲取 page html 
    輸出 Response.Write(page);

    效果:

    代碼:

    using System;
    using System.Collections.Generic;
    using System.Linq;
    using System.Text;
    using System.Text.RegularExpressions;
     
    namespace SyntacticSugar
    {
     /// <summary>
     /// ** 描述:分頁類
     /// ** 創始時間:2015-5-29
     /// ** 修改時間:-
     /// ** 作者:sunkaixuan
     public class PageString
     {
     /// <summary>
     /// 是否是英文 (默認:false)
     /// </summary>
     public bool SetIsEnglish { get; set; }
     /// <summary>
     /// 是否顯示分頁文字(默認:true)
     /// </summary>
     public bool SetIsShowText { get; set; }
     /// <summary>
     /// 樣式 (默認:"pagination")
     /// </summary>
     public string SetClassName { get; set; }
     /// <summary>
     /// 分頁參數名 (默認:"pageIndex")
     /// </summary>
     public string SetPageIndexName { get; set; }
     /// <summary>
     /// 是否是異步 同步 href='' 異步 onclick=ajaxPage() (默認:false)
     /// </summary>
     public bool SetIsAjax { get; set; }
     
     /// <summary>
     /// 自定義文字
     /// string.Format("{0}{1}{2}","總記錄數","當前頁數","總頁數")
     /// 默認值:《span class=\"pagetext\"》《strong》總共《/strong》:{0} 條 《strong》當前《/strong》:{1}/{2}《/span》
     /// </summary>
     public string SetTextFormat { get; set; }
     
     public PageString()
     {
     SetIsEnglish = false;
     SetIsShowText = true;
     SetTextFormat = "<span class=\"pagetext\"><strong>總共</strong>:{0} 條 <strong>當前</strong>:{1}/{2}</span> ";
     SetClassName = "pagination";
     SetPageIndexName = "pageIndex";
     SetIsAjax = false;
     }
     
     /*免費的樣式
     .pagination .click {cursor:pointer}
     .pagination a{text-decoration: none;border: 1px solid #AAE;color: #15B;font-size: 13px;border-radius: 2px;}
     .pagination span{ color:#666;font-size:13px;display: inline-block;border: 1px solid #ccc;padding: 0.2em 0.6em;}
     .pagination span.pagetext{ border:none}
     .pagination a:hover{background: #26B;color: #fff;}
     .pagination a{display: inline-block;padding: 0.2em 0.6em;}
     .pagination .page_current{background: #26B;color: #fff;border: 1px solid #AAE;margin-right: 5px;}
     .pagination{margin-top: 20px;}
     .pagination .current.prev, .pagination .current.next{color: #999;border-color: #999;background: #fff;}
     * */
     
     /// <summary>
     /// 分頁算法<一>共20頁 首頁 上一頁 1 2 3 4 5 6 7 8 9 10 下一頁 末頁
     /// </summary>
     /// <param name="total">總記錄數</param>
     /// <param name="pageSize">每頁記錄數</param>
     /// <param name="pageIndex">當前頁數</param>
     /// <param name="query_string">Url參數</param>
     /// <returns></returns>
     public string ToString(int total, int pageSize, int pageIndex, string query_string)
     {
     
     int allpage = 0;
     int next = 0;
     int pre = 0;
     int startcount = 0;
     int endcount = 0;
     StringBuilder pagestr = new StringBuilder();
     pageIndex = pageIndex == 0 ? 1 : pageIndex;
     pagestr.AppendFormat("<div class=\"{0}\" >", SetClassName);
     if (pageIndex < 1) { pageIndex = 1; }
     //計算總頁數
     if (pageSize != 0)
     {
     allpage = (total / pageSize);
     allpage = ((total % pageSize) != 0 ? allpage + 1 : allpage);
     allpage = (allpage == 0 ? 1 : allpage);
     }
     next = pageIndex + 1;
     pre = pageIndex - 1;
     startcount = (pageIndex + 5) > allpage ? allpage - 9 : pageIndex - 4;//中間頁起始序號
     //中間頁終止序號
     endcount = pageIndex < 5 ? 10 : pageIndex + 5;
     if (startcount < 1) { startcount = 1; } //為了避免
    輸出的時候產生負數,設置如果小于1就從序號1開始 if (allpage < endcount) { endcount = allpage; }//頁碼+5的可能性就會產生最終輸出序號大于總頁碼,那么就要將其控制在頁碼數之內 bool isFirst = pageIndex == 1; bool isLast = pageIndex == allpage; if (SetIsShowText) pagestr.AppendFormat(SetTextFormat, total, pageIndex, allpage); if (isFirst) { pagestr.Append("<span>首頁</span> <span>上一頁</span>"); } else { pagestr.AppendFormat("<a href=\"{0}pageIndex=1\">首頁</a> <a href=\"{0}pageIndex={1}\">上一頁</a>", query_string, pre); } //中間頁處理,這個增加時間復雜度,減小空間復雜度 for (int i = startcount; i <= endcount; i++) { bool isCurent = pageIndex == i; if (isCurent) { pagestr.Append(" <a class=\"page_current\">" + i + "</a>"); } else { pagestr.Append(" <a href=\"" + query_string + "pageIndex=" + i + "\">" + i + "</a>"); } } if (isLast) { pagestr.Append("<span>下一頁</span> <span>末頁</span>"); } else { pagestr.Append(" <a href=\"" + query_string + "pageIndex=" + next + "\">下一頁</a> <a href=\"" + query_string + "pageIndex=" + allpage + "\">末頁</a>"); } pagestr.AppendFormat("</div>"); return ConversionData(pagestr.ToString()); } private string ConversionData(string page) { if (SetIsEnglish) { page= page.Replace("上一頁", "Previous").Replace("下一頁", "Next").Replace("總共", "total").Replace("當前", "Current").Replace("條", "records").Replace("首頁", "First").Replace("末頁", "Last"); } if (SetIsAjax) { var matches = Regex.Matches(page, @"href\="".*?""",RegexOptions.Singleline); if (matches != null && matches.Count > 0) { foreach (Match m in matches) { page = page.Replace(m.Value, string.Format("class=\"click\" onclick=\"ajaxPage('{0}')\"", Regex.Match(m.Value, string.Format(@"{0}\=(\d+)", SetPageIndexName)).Groups[1].Value)); } } } return page; } } }

    聲明:本網頁內容旨在傳播知識,若有侵權等問題請及時與本網聯系,我們將在第一時間刪除處理。TEL:177 7030 7066 E-MAIL:11247931@qq.com

    文檔

    簡單好用的ASP.NET分頁類(支持AJAX、自定義文字)

    簡單好用的ASP.NET分頁類(支持AJAX、自定義文字):在做網站沒用 JS UI控件時 很實用 用法: var ps=new PageString(); /*可選參數*/ ps.SetIsEnglish = true;// 是否是英文 (默認:false) ps.SetIsShowText = true;//是否顯示分頁文字 (默認:true) //ps.TextFormat=
    推薦度:
    • 熱門焦點

    最新推薦

    猜你喜歡

    熱門推薦

    專題
    Top
    主站蜘蛛池模板: 成人国产精品高清在线观看| 综合在线视频精品专区| 青春草无码精品视频在线观 | www.久久精品| 欧美精品xxxxbbbb| 一区二区精品在线| 国产精品伦一区二区三级视频 | 国内精品免费久久影院| 精品国产欧美一区二区| 亚洲AV无码国产精品麻豆天美 | 国产a视频精品免费观看| 久久精品人人做人人爽电影蜜月| 久久国产香蕉一区精品| 99久久精品费精品国产| 国产2021精品视频免费播放| 久久久久久国产精品无码超碰| 亚洲国产精品综合久久一线| 久久国产精品免费一区二区三区 | 欧美成人精品高清在线播放| 国产亚洲精品看片在线观看| 日韩精品免费视频| 国产精品视频久久久| 98视频精品全部国产| 国内精品伊人久久久久AV影院| 亚洲国产成人精品无码区在线观看 | 51精品资源视频在线播放 | 国产精品高清一区二区三区不卡| 久久久无码精品亚洲日韩蜜臀浪潮| 亚洲精品国产精品乱码视色| 久久精品国产黑森林| 久久se精品一区精品二区国产| 精品久久久久久国产牛牛app| 99久久精品国产一区二区| 91亚洲国产成人久久精品网址| 国产成人精品日本亚洲直接| 国内精品久久人妻互换| 国产精品国产三级国产av品爱网| 精品人妻码一区二区三区| 国内精品伊人久久久久av一坑| 成人区精品一区二区不卡| 91精品国产自产在线观看永久|