自动化分页,HTML代码控制 思想_html/css_WEB-ITnose
1、绑定分页数据
Request:主要是获取当前查询中所参与的所有条件
pageSize:分页显示数量
totalCount:分页总数
currentPageStr:自定义参数(后面会更新该参数的用法和途径)
tab:自定义参数(后面会更新该参数的用法和途径,和上面currentPageStr配合使用,需优化)
pageIndexNumber:页面上显示当前页前、后多少页数数的数字
如:显示当前页前后个5页的数字
IsShouCount:是否显示总数量
2、用法,Response.Write页面输出一段html
<div class="m-t-20 paging"> <pre class="brush:php;toolbar:false"> <%Response.Write(ZCJExtensions.Pager(Request, 40, iCount, "pi",IsShouCount:true));%>
3、源代码 方法主要用到请求头类的使用,HttpRequest
public static class ZCJExtensions{ /// <summary> /// 分页Pager显示(分页请求字符串默认为pi) /// </summary> /// <param name="pageSize">每页记录的数量</param> /// <param name="totalCount">总记录数</param> /// <param name="pageIndexNumber">显示页索引的数量</param> /// <returns></returns> public static string Pager(int pageSize, int totalCount,int pageIndexNumber = 10) { return ZCJExtensions.Pager(HttpContext.Current.Request, pageSize, totalCount, "pi", "", pageIndexNumber); } /// <summary> /// 分页Pager显示 /// </summary> /// <param name="requ">请求</param> /// <param name="pageSize">每页记录的数量</param> /// <param name="totalCount">总记录数</param> /// <param name="currentPageStr">请求字符串</param> /// <param name="tab">切换ID</param> /// <param name="pageIndexNumber">显示页索引的数量</param> /// <returns></returns> public static string Pager(HttpRequest requ, int pageSize, int totalCount, string currentPageStr = "1",string tab="",int pageIndexNumber = 10,bool IsShouCount=false) { //var queryString = html.ViewContext.HttpContext.Request.QueryString; string html = ""; var queryString = requ.QueryString; int currentPage = 1; //当前页 var totalPages = Math.Max((totalCount + pageSize - 1) / pageSize, 1); //总页数 //var dict = new System.Web.Routing.RouteValueDictionary(html.ViewContext.RouteData.Values); var dict = new System.Web.Routing.RouteValueDictionary(requ.Form); var output = new System.Text.StringBuilder(); var url = requ.Url.AbsolutePath + "?" + currentPageStr + "=(*)"; if (tab.Length > 0) { url += "&tab=" + tab; } //与相应的QueryString绑定 foreach (string key in queryString.Keys) { if (!string.IsNullOrEmpty(key) && queryString[key] != null ) { dict[key] = queryString[key]; if (key != currentPageStr && key.ToLower()!="tab") { url += "&" + key + "=" + queryString[key]; } } } //获取 ~/Page/{page number} 的页号参数 int.TryParse((dict[currentPageStr] != null) ? dict[currentPageStr].ToString() : "0", out currentPage); if (currentPage <= 0) currentPage = 1; if (totalPages > 1) { if (currentPage != 1) { dict[currentPageStr] = 1; //output.AppendFormat("{0} ", html.RouteLink("<<", dict)); var pageunm = "1"; var tempurl = url.Replace("(*)", pageunm); output.AppendFormat("{0}", "<a href='" + tempurl + "'>首页</a>"); } if (currentPage > 1) { //处理上一页的连接 dict[currentPageStr] = currentPage - 1; var pageunm = (currentPage - 1).ToString(); var tempurl = url.Replace("(*)", pageunm); //output.Append(html.RouteLink("<", dict)); output.Append("<a href='" + tempurl + "'>上一页</a>"); } else { //output.Append("<span><</span>"); } output.Append(""); int currint = pageIndexNumber / 2; for (int i = 0; i <= pageIndexNumber; i++) { //一共最多显示10个页码,前面5个,后面5个 if ((currentPage + i - currint) >= 1 && (currentPage + i - currint) <= totalPages) if (currint == i) { //当前页处理 output.Append(string.Format("<span>{0}</span>", currentPage)); } else { //一般页处理 dict[currentPageStr] = currentPage + i - currint; var pageunm = (currentPage + i - currint).ToString(); var tempurl = url.Replace("(*)", pageunm); //output.Append(html.RouteLink((currentPage + i - currint).ToString(), dict)); output.Append("<a href='" + tempurl + "'>" + pageunm + "</a>"); } output.Append(""); } if (currentPage < totalPages) { //处理下一页的链接 dict[currentPageStr] = currentPage + 1; var pageunm = (currentPage + 1).ToString(); //output.Append(html.RouteLink(">", dict)); var tempurl = url.Replace("(*)", pageunm); output.Append("<a href='" + tempurl + "'>下一页</a>"); } else { //output.Append(">"); } output.Append(""); if (currentPage != totalPages) { dict[currentPageStr] = totalPages; var pageunm = totalPages.ToString(); var tempurl = url.Replace("(*)", pageunm); //output.Append(html.RouteLink(">>", dict)); output.Append("<a href='" + tempurl + "'>尾页</a>"); } output.Append(" "); } output.AppendFormat("第{0}页/共{1}页", currentPage, totalPages);//这个统计加不加都行 if (IsShouCount == true) { output.AppendFormat(",共{0}条记录", totalCount); } //HtmlString return output.ToString(); }}

핫 AI 도구

Undresser.AI Undress
사실적인 누드 사진을 만들기 위한 AI 기반 앱

AI Clothes Remover
사진에서 옷을 제거하는 온라인 AI 도구입니다.

Undress AI Tool
무료로 이미지를 벗다

Clothoff.io
AI 옷 제거제

Video Face Swap
완전히 무료인 AI 얼굴 교환 도구를 사용하여 모든 비디오의 얼굴을 쉽게 바꾸세요!

인기 기사

뜨거운 도구

메모장++7.3.1
사용하기 쉬운 무료 코드 편집기

SublimeText3 중국어 버전
중국어 버전, 사용하기 매우 쉽습니다.

스튜디오 13.0.1 보내기
강력한 PHP 통합 개발 환경

드림위버 CS6
시각적 웹 개발 도구

SublimeText3 Mac 버전
신 수준의 코드 편집 소프트웨어(SublimeText3)

뜨거운 주제











HTML은 간단하고 배우기 쉽고 결과를 빠르게 볼 수 있기 때문에 초보자에게 적합합니다. 1) HTML의 학습 곡선은 매끄럽고 시작하기 쉽습니다. 2) 기본 태그를 마스터하여 웹 페이지를 만들기 시작하십시오. 3) 유연성이 높고 CSS 및 JavaScript와 함께 사용할 수 있습니다. 4) 풍부한 학습 리소스와 현대 도구는 학습 과정을 지원합니다.

HTML은 웹 구조를 정의하고 CSS는 스타일과 레이아웃을 담당하며 JavaScript는 동적 상호 작용을 제공합니다. 세 사람은 웹 개발에서 의무를 수행하고 화려한 웹 사이트를 공동으로 구축합니다.

WebDevelopmentReliesonHtml, CSS 및 JavaScript : 1) HtmlStructuresContent, 2) CSSSTYLESIT, 및 3) JAVASCRIPTADDSINGINTERACTIVITY, BASISOFMODERNWEBEXPERIENCES를 형성합니다.

anexampleStartingtaginhtmlis, whithbeginsaparagraph.startingtagsareessentialinhtmlastheyinitiate rements, definetheirtypes, andarecrucialforstructurituringwebpages 및 smanstlingthedom.

GiteEpages 정적 웹 사이트 배포 실패 : 404 오류 문제 해결 및 해결시 Gitee ...

웹 주석 기능에 대한 Y 축 위치 적응 알고리즘이 기사는 Word 문서와 유사한 주석 기능을 구현하는 방법, 특히 주석 간격을 다루는 방법을 모색합니다 ...

HTML, CSS 및 JavaScript는 웹 개발의 세 가지 기둥입니다. 1. HTML은 웹 페이지 구조를 정의하고 등과 같은 태그를 사용합니다. 2. CSS는 색상, 글꼴 크기 등과 같은 선택기 및 속성을 사용하여 웹 페이지 스타일을 제어합니다.

이미지를 클릭 한 후 주변 이미지를 산란 및 확대하는 효과를 얻으려면 많은 웹 디자인이 대화식 효과를 달성해야합니다. 특정 이미지를 클릭하여 주변을 만들 수 있습니다 ...
