首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

如何隐藏中间的分页号并保留前3个页码和最后一个页码

隐藏中间的分页号并保留前3个页码和最后一个页码可以通过以下步骤实现:

  1. 首先,确定总页数(total_pages)和当前页码(current_page)。
  2. 创建一个空的列表(page_numbers)来存储要显示的页码。
  3. 如果总页数小于等于5,那么所有页码都应该显示,将页码从1到总页数依次添加到page_numbers列表中。
  4. 如果当前页码小于等于3,那么前4个页码都应该显示,将页码从1到4依次添加到page_numbers列表中,并在最后添加省略号(...)。
  5. 如果当前页码大于等于总页数减2,那么后4个页码都应该显示,将页码从总页数减3到总页数依次添加到page_numbers列表中,并在最前面添加省略号(...)。
  6. 如果当前页码在4到总页数减2之间,那么前3个页码、当前页码和后一个页码都应该显示,将页码1、2、3、当前页码和总页数减1、总页数依次添加到page_numbers列表中,并在适当的位置添加省略号(...)。
  7. 最后,遍历page_numbers列表并显示页码。

这种分页方式可以提供简洁的页面导航,同时保留了前几个页码和最后一个页码,使用户能够快速导航到所需的页面。

腾讯云相关产品和产品介绍链接地址:

  • 腾讯云云服务器(CVM):提供弹性计算能力,支持多种操作系统和应用场景。详情请参考:https://cloud.tencent.com/product/cvm
  • 腾讯云云数据库MySQL版:提供高性能、可扩展的关系型数据库服务。详情请参考:https://cloud.tencent.com/product/cdb_mysql
  • 腾讯云对象存储(COS):提供安全可靠的云端存储服务,适用于图片、视频、文档等各种类型的数据存储。详情请参考:https://cloud.tencent.com/product/cos
  • 腾讯云人工智能平台(AI Lab):提供丰富的人工智能服务和开发工具,包括图像识别、语音识别、自然语言处理等。详情请参考:https://cloud.tencent.com/product/ailab
  • 腾讯云物联网平台(IoT Hub):提供全面的物联网解决方案,支持设备接入、数据管理和应用开发等功能。详情请参考:https://cloud.tencent.com/product/iothub
  • 腾讯云移动推送(TPNS):提供高效可靠的移动消息推送服务,支持Android和iOS平台。详情请参考:https://cloud.tencent.com/product/tpns

请注意,以上链接仅供参考,具体产品选择应根据实际需求进行评估和决策。

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

索引-mysql详解(三)

InnoDB & index页-mysql详解(二) 索引 首先我们明确下页分裂是什么呢,因为每页是16kb,这时候数据存满肯定会存到另一个页,每个新页并不是连续,但下一页必须数据大于一页,所以当后面的页数据小于前面页时候...于是我们如何通过索引目录来查找呢,因为前面说了页分裂是从小打大排序好,所以 每个目录key都是最小主键值,value则就是页码,通过key来查找对应页码找到对应存储数据页。...这样组成之后就是b+树。 聚簇索引:当使用记录主键为值大小进行记录排序,组成一个单向链表,各个存放数据页是双向链表,b+树叶子节点存储是完整记录数(包括隐藏列)。...,非叶子节点数据也不再是主键+页号,而是列+页号。...自增主键重要性:我们插入数据是按顺序在b+树排序好,如果在中间插入一条数据,意味着重新排序页分裂,意味着性能损耗,这时候自增主键保证新增数据在后面。

37420

PHP+MYSQL分页最终章6

当前指的是页号1或者2时 else{ $start=1; $end=$showPage; } //最后面几个特殊页号显示...当前指的是页号1或者2时 else{ $start=1; $end=$showPage; } //最后面几个特殊页号显示...,就送最后一页啦 如果满足一个条件就可以进去if里面 if( pageSize);也就是说最后剩余一点形成一页也包括进去,就送最后一页啦如果满足一个条件就可以进去if...里面if(total_pages>$showPage){,意思是比如124条是13页是吧,13>5,5是显示页码,思维是什么呢,是如果总页数大于要显示页码5的话,就里面的核心是隐藏哈,隐藏方式是…...else{ $start=1; $end=$showPage; } //最后面几个特殊页号显示,当前显示页号78 if($

63240
  • 独立表空间结构(1)之区---InnoDB表空间(二十七)

    然后页都会有通用部分,每个页百百都有file header file trailer,剩余中间部分可能不同,file trailer作用是在数据刷新到磁盘时候,效验和和lsn值验证是否和头部效验...,就会把真实数据放到新页里,这时候真实数据列表存储就是一部真实数据,一部分指定到页页码主键值,比较级compactdynamic不同是,compact真实数据列表存储是一部分页码主键,一部真实数据...fil_page_prev:上一个页号,因为所有的页存储物理位子不在一起,下面的fil_page_next吧所有的页通过主键连接起来组成双向链表。...fil_page_next:下一个页码。 fil_page_lsn:页码最后修改时对应日志序列位子。(Log Sequence Number) fil_page_type:页面类型。...表空间一个页fil_page_offset页号是0,以后依次为1,2,3.。。。

    59311

    B+树(3)聚簇索引,二级索引 --mysql从入门到精通(十五)

    上篇文章说了b+树索引方案,因为用之前二法查找,前提条件是索引必须是挨着,而受到用户记录数启发,建立了用户记录真实数据页一样目录记录页(索引),并且最高三层,最高层是根节点,最底层是叶子节点...2)页内数据也是通过主键值连接成单项链表。3)目录记录页也是通过主键值连接成双向链表。 B+树叶子节点存储是完整用户记录信息,包括隐藏页。...二级索引B+树叶子节点不是用户存储数据,只存储c2列+他主键。 二级索引目录页不再是主键+页号,而是c2列+页号。 我们聚簇索引查询时候是过程呢?...先根节点查询到我们非叶子节点,非叶子节点在通过主键查询页码,二查找法找到底层页码槽点,遍历槽点里数据找到我们需要所有值。 二级索引查找过程呢?...先根目录节点定位到我们c2非叶子节点,在根据c2非叶子几点对应页码,找到对应c2列主键,最后再回表,重新通过c2主键查询一次b+树,通过聚簇索引方法。

    33540

    MySQL---数据库从入门走向大神系列(十七)-JavaWeb分页技术实例演示2

    分页,是一种将所有数据分段展示给用户技术.用户每次看到不 是全部数据,而是其中一部,如果在其中没有找到自己想要内容,用户可以通过指定页码或是点上/下一页方式进行翻页。...本例演示静态分页,也就是先设置好每页显示10行,再根据总行数,来算出总页数,并且只显示10个页码。增加查询功能,并且查询后页面也进行分页。页码也进行分页 !...0:1 ) 当前页号: currentPage 当前要显示页面数据起始行号终止行号 startN: (currentPage-1)*pageSize 如何显示从startN开始pageSize...条记录 select * from stud limit startN, pageSize; 增加了: 开始页码: showStart 结束页码: showEnd 像这样: ?...request.setAttribute("result", result); //分页后分页--向前端多传送两个数据(起始末尾页号):showStartshowEnd

    39510

    The basics of InnoDB space file layout(3.InnoDB空间文件布局基础知识)

    很多人知道,InnoDB数据限制是64TB。这实际上是对每个表空间限制。只要是因为页号一个32位整数。加上默认页大小2^32*16k=64TB。 一个页文件布局如下: ?...LSN 页面最后一次修改64位日志序列号LSN,存储在页眉中。相同LSN低位32位存储在页脚中。...一个FSP_HDR页面在内部只有足够空间来存储256个区段。(16384页,共246M)记账簿信息。因此必须每隔16384页为xDES页形式来保留额外空间。...由于系统空间与其他空间类似,所以它有所需FSP_HDR、IBUF_BITMAPINODE页作为它三个页分配,之后,就有点特别了: ?...64-127页,双写缓冲区包含64个页面,一个区段一个块,双写缓冲区被用作innoDB恢复机制一部。 128-191页,双写缓冲区第二个块。

    76620

    【玩转腾讯云】手把手教你使用VueReactAngular三大框架开发Pagination分页组件

    在继续开发Vue版本Pagination组件之前,我们先来看看其他框架如何实现使用一个组件。 以下是显示效果: ?...中间显示页码部分就是分页器,它核心是页码显示页码省略逻辑。...那么以该页码为中心,两边显示一定页码,比如两边各显示2页; 另外首页尾页需要始终显示出来,方便回到首页跳转到尾页; 首页到第3页中间页码以及第7页到尾尾页码隐藏起来,并且支持点击左/右更多按钮...先梳理下更多按钮显示逻辑: 中间按钮一共5页,加上首尾按钮2页,一共7页,也就是说只有大于7页,才有可能显示更多按钮; 左右更多按钮会随着当前页码不同而显示或隐藏,以第4页倒数第4页为界; 当页码大于第...6.2.6 第3步:实现中间页码按钮组 中间页码组centerPages是一个长度在[0, centerSize]之间数组,它值由总页码totalPage当前页码current共同决定,计算规则如下

    7.8K00

    InnoDB & index页-mysql详解(二)

    除了我们存储数据外,还有三个重要隐藏列 row_id:当没有主键唯一建时候会存在。 Roll_Pointer:每条都有。 Transaction_id:每条都有。...Compact在真实数据地方会有一部存储真实数据,剩余部分存储指定页页码,超出存储真实数据(756kb)数据就属于溢出数据。...Mysql在5.0之前用是redundant行格式,现在MYSQL5.7版本默认是dynamic,他与compact基本相同,但是存储真实数据不太一样,他没有一部存储真实数据,而是全部指向数据页页码...File header:页效验页号,上一页,下一页,log sequence number。...File trailer:会与头部页效验相对应,当数据同步到内存成功后,会同步到尾部,如果二者不一致,则表示同步中间出错,可能系统断电宕机原因。

    50230

    操作系统八内存管理

    逻辑地址使用需映射到内存物理地址。MMU动态将逻辑地址加上重定位寄存器值后映射成物理地址。映射后物理地址再送交内存单元。...当cpu调度器选择一个进程执行时,作为上下文切换一部,调度程序会用正确值初始化重定位寄存器界限地址寄存器,保证其他进程不受该进程运行所影响。...当执行进程时,其页从备份存储(他也固定大小块,大小与内存帧一样)中调入到可用内存帧中。       由CPU生成每个地址分为两个部分:页号P页偏移d,页号作为页表索引。...一个简单方法是将页表划分为更小部分。       一种方法是使用两级分页算法,将页表在分页。以一个4kb页大小32位系统为例。一个逻辑地址被分为20位页码12位页偏移。...因为要对页表进行再000页,所以该页号可分为10位页码10位 页偏移。这样一个逻辑地址就表示如下形式: ?

    89610

    sql2java-pagehelper:Spring AOP支持

    sql2java是我几年年开始写一个sql2java是一个轻量级数据库(SQL)访问代码(java)生成器。这几年一直在根据工作需要维护升级。...本文接续上一篇博客《sql2java-pagehelper:参照Mybatis-PageHelper实现分页查询》介绍Sql2java-pagehelper提供分页查询(PageHelper)动态SQL...pageSize int 每页数量 size int 当前页数量 pages int 总页数 prePage int 一页 nextPage int 下一页 isFirstPage boolean...是否为第一页 isLastPage boolean 是否为最后一页 hasPreviousPage boolean 是否有一页 hasNextPage boolean 是否有下一页 navigatePages...int 导航页码数 navigatepageNums int[] 所有导航页号 navigateFirstPage int 导航条上第一页 navigateLastPage int 导航条上最后一页

    38520

    word文档页码不连续编号怎么办_怎样给论文加页码

    今天和大家分享两个页码有关技巧: 为分栏页面分别设置页码 对纵向文档中横向表格设置页码 page域及域代码操作基础技巧 01 分栏页面 像下面这个文档,对页面分成了两栏,如果现在想给每一栏都添加一个页码序号...,也就是在第1页左右两栏分别显示第1页第2页,在第2页左右两栏分别显示第3页第4页,这样效果该如何设置呢?...然后在花括号内输入一个等于号,再按快捷键【Ctrl+F9】输入一对花括号,输入页码域page,最后域代码如下: 注意: 域代码中所有的花括号都是通过快捷键【Ctrl+F9】输入,直接输入无效!...(比如也出现在纸张窄端中间位置),这该如何设置呢?...先在页脚中绘制一个文本框,调整大小,将环绕方式设置为四周型环绕,并将其文本向调整为“文字旋转90度”,拖放到目标位置: 第3步:在文本框中添加页码设置起始页为续节,根据需要将文本框边框线填充色设置为

    2.4K20

    Page management in InnoDB space files(4.InnoDB Space文件页管理)

    每个页面的基本结构空间描述是InnoDB空间文件布局基本知识,现在我们将进一步描述InnoDB结构与管理页面区段。以及自由空间管理,以及它如何追踪页分配给许多不同用途,以及使用哪个页。...列表基本节点结构如下: ? 基本节点只在一些高级结构中存储一次,比如FSP头。它包含列长度,以及指向列表中一个最后一个列表节点指针。实际上列表节点看起来非常相似。 ?...当然,列表节点不存储抵押给最后一个指针,而是存储一个一个指针。 所有的指针都是由一个页码(需要在一个相同space之内)和在可以找到列表节点页面内字节offset组成。...片段数组:一个包含32个页号页面数组,这些页面分别从空间片段区段FREE_FRAG或者FULL_FRAG列表中区段分配,一旦该数组已满,就只能将完整区段分配给文件段。...列出范围描述符基本节点也出现在每个文件段INODE条目中: FREE :完全未使用分配给文件段区段。 NOT_FULL: 至少有一个以使用页面分配给此文件段区段。

    96921

    CPU是如何访问内存

    内存管理可以说是一个比较难学模块,之所以比较难学。一是内存管理涉及到硬件实现原理软件复杂算法,二是网上关于内存管理解释有太多错误解释。...希望可以做个内存管理系列,从硬件实现到底层内存分配算法,再从内核分配算法到应用程序内存划分,一直到内存硬盘如何交互等,彻底理解内存管理整个脉络框架。本节主要讲解硬件原理分页管理。...所以搞懂了 MMU 如何把虚拟地址转化为物理地址也就明白了 CPU 是如何通过 MMU 来访问内存。...现在我们假设每一页大小是 4KB,而且页表只有一级,那么页表长成下面这个样子(页表每一行是32个 bit,20 bit 表示页号 p,后面12 bit 表示页偏移 d): ?...仍以之前32位系统为例,一个逻辑地址被分为20位页码12位页偏移d。因为要对页表进行再分页,该页号可分为10位页码p110位页偏移p2。

    2.4K60

    CPU是如何访问内存

    内存管理可以说是一个比较难学模块,之所以比较难学。一是内存管理涉及到硬件实现原理软件复杂算法,二是网上关于内存管理解释有太多错误解释。...希望可以做个内存管理系列,从硬件实现到底层内存分配算法,再从内核分配算法到应用程序内存划分,一直到内存硬盘如何交互等,彻底理解内存管理整个脉络框架。本节主要讲解硬件原理分页管理。...所以搞懂了 MMU 如何把虚拟地址转化为物理地址也就明白了 CPU 是如何通过 MMU 来访问内存。...现在我们假设每一页大小是 4KB,而且页表只有一级,那么页表长成下面这个样子(页表每一行是32个 bit,20 bit 表示页号 p,后面12 bit 表示页偏移 d): ?...仍以之前32位系统为例,一个逻辑地址被分为20位页码12位页偏移d。因为要对页表进行再分页,该页号可分为10位页码p110位页偏移p2。

    3.1K40

    MyBatis 分页插件 PageHelper 简单使用流程

    排序 startRow当前页面第一个元素在数据库中行号 endRow当前页面最后一个元素在数据库中行号 total总记录数(在这里也就是查询到用户总数) pages总页数 (这个页数也很好算,...每页5条,总共有11条,需要3页才可以显示完) list结果集 prePage一页 nextPage下一页 isFirstPage是否为第一页 isLastPage是否为最后一页 hasPreviousPage...是否有一页 hasNextPage是否有下一页 navigatePages导航页码数 navigatepageNums所有导航页号 navigateFirstPage导航第一页 navigateLastPage...导航最后一页 firstPage第一页 lastPage最后一页 5、包装数据,方便浏览器解析 Msg(这个适合分页插件无关,主要是对于cotroller返回数据,进行包装,更方便浏览器解析) public...,很厉害嘛,又让我感觉自己是一个代码组装者,搬砖没什么区别,但这也是必须要做

    1.7K20

    idea-ssm-crud项目实战(三)

    1.封装一个pageload方法加载员工信息,由于要分页所以封装方法需要一个页码参数 2.首先需要在页面加载之后加载数据需要使用到$(function(){}); 查看前端js代码 /** * 1.封装一个pageload方法加载员工信息,由于要分页所以封装方法需要一个页码参数 * 2.首先需要在页面加载之后加载数据需要使用到...,我将分页绑定插件方法拆了多个方法,上一页,下一页,首页,尾页,中间页码一共5个方法 /** * 显示分页详细信息 */ function page_info_show(pageInfo)...page_lis(pageInfo); //下一页 nextPageFun(); //尾页 lastPageFun(); } 最后显示结果 ?...分页事件 每个页码绑定事件就很简单了。在写pageload方法当时就只是传入一个pageIndex页码就可以了,现在也就是只需要为页号绑定个事件。

    1K10

    【JavaWeb】109:分页栏优化

    ②按钮保证五后四原则: 当选中按钮小于6时,那页面显示按钮为1-10这十个按钮。 当选中按钮大于6时,显示按钮就得动态变化了。 ③选中按钮为1时:首页上一页隐藏。...④选中按钮为最后页时:末页下一页隐藏。 ⑤点首页回到第1页,点末页回到最后一页。 ⑥点上一页在当前页往前移动一位,点下一页在当前页往后移动一位。...②中四个参数 这是我们需要实现6个小功能中,与之密切关联4个变量。 其实在Java中,无外乎就是变量方法。 遇到了一个需求,首先要考虑就是将该需求中相关参数定义成Java中一个变量。...如果当前页码为1,那么上一页不变,还为1。 如果当前页码不为最后一页,那么下一页也就是当前页码加1。 如果当前页码最后一页,那么下一页不变,还是最后一页。...②计算起始页结束页 这个要考虑到就更多了,页面中展示页码为10个并且保证五后四原则,那么: 如果总页数小于10,就没法展示10个了,起始页为1,结束页为总页数。

    64840

    微信小程序之上拉加载与下拉刷新

    这种方式其实是PC端分页浏览一个分页形式变种,很多PC网页也会采用这种方式来进行内容分页加载,以替代比较古老1,2,3,4,5,6,7...分页(称之为有页码分页,这种分页方式其实在一些场景下仍然是非常有用...上拉加载 前面我们已经了解到下拉加载本质是一个分页加载,每次触发加载下一页条件是当前页面到达底部,因此,我们可以整理出一个实现基本思路: 初始页号为1,向后端请求第一页数据(数据中包含数据总条数...,及当前页数据数组),返回后渲染该该页数据 监听页面是否被滚动到底部,是的话,则递增页号(+1)并向后端请求该新页号数据,返回结果后,将该页数据添加到之前已加载数据后面,并重新渲染 重复步骤2操作...感觉实现起来也不难,主要就是其中“监听页面是否被滚动到底部”如何来实现?...如果你需要局部相应功能,你可以尝试使用做容器,通过它bindscrolltoupperbindscrolltolower来监听内容到顶或到底事件,模拟实现出上拉加载下拉刷新功能

    4.3K20

    Word设置“第X页共Y页”页码且不计目录、前言等页数

    那么,如何实现我们这一需求呢?   方法也非常简单。首先,我们在页脚暂时不要添加任何页码,先直接将第页,共页这四个字中间逗号打出来,如下图所示。   ...随后,选中“第页”两个字中间选择“插入”→“文档部件”→“域”选项。   在弹出“域”窗口,在域名中选择“Page”,选择数字格式。   ...随后,可以看到“第X页”中X已经显示出来了。   随后,将鼠标放在“共页”两个字中间,同样调出“域”窗口,选择“NumPages”选项,同时配置数字格式。   ...我们在这一层多出来花括号左侧,输入一个等号=,并在右侧输入一个-4。这里-4是因为在我这个文档中正文前有4页,如果大家在正文是其他页数,这里注意修改一下就好。   ...此时,“共30页”中30已经是我们想要数据了;但有时可能30这个数字格式页码其他文字或数字格式不一致,如上图所示,30是加粗

    27110
    领券