jsp实现上一页下一页翻页功能(示例代码)

发布时间 - 2026-01-11 02:19:40    点击率:

前段时间一直忙于期末考试和找实习,好久没写博客了。

这段时间做了个小项目,包含了翻页和富文本编辑器Ueditor的两个知识点,Ueditor玩的还不是很深,打算玩深后再写篇博客。

要实现翻页功能,只需要设置一个pageIndex即可,然后每次加载页面时通过pageIndex去加载数据就行。

那么我们可以设置一个隐藏的input框,用于传递pageIndex给下个页面。

当我们点击上一页的时候,通过js方法改变pageIndex的值,再提交表单即可

二话不多说,看代码,代码里面写的还算比较清楚。

这个是index.jsp的代码。

index.jsp

<%@page import="Bean.DBBean"%>
<%@page import="Entity.Record"%>
<%@page import="java.util.List"%>
<%@ page language="java" contentType="text/html; charset=UTF-8"
  pageEncoding="UTF-8"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>NoteBook of Eric Wu</title>
  <link rel="stylesheet" href="css/basic.css" rel="external nofollow" >
  <link rel="stylesheet" href="css/index.css" rel="external nofollow" >
</head>
<body>
<%
  int allRecord=0;//总的记录条数,不包含查询后的
  int totalRecord=0;//总的记录条数,包含查询后的
  int totalPage=1;//总的页面数,包含查询后的
  int pageIndex=1;//当前页面号,用于控制页面翻转,默认为1
  List<Record> records=null;
  DBBean db=new DBBean();
  allRecord=db.getRecordCount();
  totalRecord=db.getRecordCount();
  totalPage=(totalRecord-1)/10+1;
  if(request.getParameter("pageIndex")!=null){//不是第一次加载
    //要做下数据类型转换
    pageIndex=Integer.valueOf(request.getParameter("pageIndex"));
    if(request.getParameter("keyword")!=null){
      String keyword=request.getParameter("keyword");
      records=db.getRecords(pageIndex,keyword);//获取查询内容一页的事件记录集,共10条
      totalRecord=db.getRecordCount(keyword);
      totalPage=(totalRecord-1)/10+1;
    }else{
      records=db.getRecords(pageIndex);//获取一页的事件记录集,共10条
    }
  }else{//第一次加载
    records=db.getRecords(pageIndex);//获取一页的事件记录集,共10条
  }
  session.setAttribute("records", records);//便于后面使用
%>
  <div id="home">
  <div id="header">
    <div id="WebTitle">
      <div class="maintitle"><a href="index.jsp" rel="external nofollow" rel="external nofollow" target="_blank">NoteBook of Eric Wu</a></div>
      <div class="subtitle">The palest ink is better than the best memory !</div>
    </div>

    <div id="navigator">
      <ul id="navList">
        <li><a href="index.jsp" rel="external nofollow" rel="external nofollow" >首页</a></li>
        <li><a href="add.jsp" rel="external nofollow" >新增</a></li>
        <li><a href="change.jsp" rel="external nofollow" >修改</a></li>
          <li><a href="delete.jsp" rel="external nofollow" >删除</a></li>
      </ul>
      <div id="Stats">
        记录-<%=allRecord %>
      </div><!--end: Stats 状态-->
    </div><!-- end: navigator 导航栏 -->
  </div><!-- end: header 头部 -->
  
  <div id="main">
      <div id="content">
        <form id="searchForm" name="searchForm" action="index.jsp" method="get">
          <input type="hidden" name="pageIndex" id="pageIndex" value="1">
        <div id="search">
          <div class="center"></div>
          <input type="text" class="search" id="keyword" name="keyword" placeholder="请输入要查询的记录">
          <img src="img/search.jpg" onclick="searchKeyword();" class="button">
        </div>
      </form>
        <table>
        <tr>
          <th width="10%">序号</th>
          <th width="60%">标题</th>
          <th width="30%">时间</th>
        </tr>
        <%
          int count=0;
          if(records!=null){
            for(Record r: records){
              count++;
        %>
        <tr>
          <td class="center"><%= count %></td>
          <td><a href="content.jsp?recordId=<%= r.getId() %>" rel="external nofollow"  target="_blank"><%= r.getTitle() %></a></td>
          <td class="center"><%= r.getTime() %></td>
        </tr>
        <%  
            }
          }
        %>
         <tr class="alt" >
          <td class="center" colspan="3">
            共<%= totalRecord %>条记录&nbsp;&nbsp;&nbsp;
            共<%= totalPage %>页&nbsp;&nbsp;&nbsp;
            每页10条&nbsp;&nbsp;&nbsp;
            当前第<%= pageIndex %>页&nbsp;&nbsp;&nbsp;
            <a href="javascript:void(0);" rel="external nofollow" rel="external nofollow" class="turnPage" onclick="turnTopPage()">上一页</a>&nbsp;&nbsp;&nbsp;
            <a href="javascript:void(0);" rel="external nofollow" rel="external nofollow" class="turnPage" onclick="turnBottomPage()">下一页</a>&nbsp;&nbsp;&nbsp;
          </td>
        </tr>
        </table>
    </div><!-- end: content 内容 -->
  </div><!-- end: main 主要部分 -->

  <div id="footer">   
    Copyright &copy;2017 汕大-吴广林
  </div><!-- end: footer底部-->
  </div><!-- end: home 自定义的最大容器 -->
</body>

<script type="text/javascript">
  var pageIndex=<%=pageIndex %>;
  var totalPage=<%=totalPage %>;
  console.log(pageIndex);
  //上一页
  function turnTopPage(){
    if(pageIndex==1){
      return;
    }else{
      document.getElementById("pageIndex").value=pageIndex-1;
      document.getElementById("searchForm").submit();
    }
  }
  //下一页
  function turnBottomPage(){
    if(pageIndex>=totalPage){  
      return;
      }else{
      document.getElementById("pageIndex").value=pageIndex+1;
      document.getElementById("searchForm").submit();
      }
  }
  function searchKeyword(){
    document.getElementById("pageIndex").value=1;
    document.getElementById("searchForm").submit();
  }
</script>
</html>

效果图

翻页后:pageIndex=1

翻页后:pageIndex=2

以上这篇jsp实现上一页下一页翻页功能(示例代码)就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持。


# jsp上一页  # 下一页  # JavaScript中transform实现数字翻页效果  # JavaScript实现翻页功能(附效果图)  # 基于Vuejs框架实现翻页组件  # 移动端翻页插件dropload.js(支持Zepto和jQuery)  # Js实现网页键盘控制翻页的方法  # js实现翻页后保持checkbox选中状态的实现方法  # 一个JS翻页效果  # javascript移动端 电子书 翻页效果实现代码  # 上一页  # 翻页  # 加载  # 给大家  # 记录集  # 条数  # 这段  # 每页  # 我们可以  # 就行  # 博客  # 希望能  # 要做  # 请输入  # 自定义  # 还算  # 只需要  # 当我们  # 这篇 


相关栏目: 【 网站优化151355 】 【 网络推广146373 】 【 网络技术251813 】 【 AI营销90571


相关推荐: Laravel中的Facade(门面)到底是什么原理  手机网站制作与建设方案,手机网站如何建设?  进行网站优化必须要坚持的四大原则  Android Socket接口实现即时通讯实例代码  如何快速搭建虚拟主机网站?新手必看指南  北京网站制作的公司有哪些,北京白云观官方网站?  Laravel如何使用Vite进行前端资源打包?(配置示例)  百度浏览器如何管理插件 百度浏览器插件管理方法  深圳网站制作培训,深圳哪些招聘网站比较好?  如何彻底删除建站之星生成的Banner?  焦点电影公司作品,电影焦点结局是什么?  专业商城网站制作公司有哪些,pi商城官网是哪个?  Laravel如何实现多表关联模型定义_Laravel多对多关系及中间表数据存取【方法】  Laravel如何发送邮件_Laravel Mailables构建与发送邮件的简明教程  Laravel如何实现多对多模型关联?(Eloquent教程)  Laravel如何生成API文档?(Swagger/OpenAPI教程)  英语简历制作免费网站推荐,如何将简历翻译成英文?  Win11怎么关闭专注助手 Win11关闭免打扰模式设置【操作】  rsync同步时出现rsync: failed to set times on “xxxx”: Operation not permitted  微信小程序 五星评分(包括半颗星评分)实例代码  佛山网站制作系统,佛山企业变更地址网上办理步骤?  香港服务器建站指南:外贸独立站搭建与跨境电商配置流程  jimdo怎样用html5做选项卡_jimdo选项卡html5实现与切换效果【指南】  ,网页ppt怎么弄成自己的ppt?  西安市网站制作公司,哪个相亲网站比较好?西安比较好的相亲网站?  三星、SK海力士获美批准:可向中国出口芯片制造设备  齐河建站公司:营销型网站建设与SEO优化双核驱动策略  使用C语言编写圣诞表白程序  网站视频制作书签怎么做,ie浏览器怎么将网站固定在书签工具栏?  Python文本处理实践_日志清洗解析【指导】  Laravel怎么实现微信登录_Laravel Socialite第三方登录集成  千问怎样用提示词获取健康建议_千问健康类提示词注意事项【指南】  Laravel中DTO是什么概念_在Laravel项目中使用数据传输对象(DTO)  Laravel如何创建自定义Artisan命令?(代码示例)  阿里云高弹*务器配置方案|支持分布式架构与多节点部署  JavaScript数据类型有哪些_如何准确判断一个变量的类型  高性能网站服务器部署指南:稳定运行与安全配置优化方案  Laravel怎么写单元测试_PHPUnit在Laravel项目中的基础测试入门  如何快速建站并高效导出源代码?  jQuery 常见小例汇总  如何在阿里云ECS服务器部署织梦CMS网站?  高防服务器租用首荐平台,企业级优惠套餐快速部署  lovemo网页版地址 lovemo官网手机登录  邀请函制作网站有哪些,有没有做年会邀请函的网站啊?在线制作,模板很多的那种?  Laravel怎么实现一对多关联查询_Laravel Eloquent模型关系定义与预加载【实战】  如何快速搭建高效香港服务器网站?  Laravel如何实现本地化和多语言支持_Laravel多语言配置与翻译文件管理  Laravel Artisan命令怎么自定义_创建自己的Laravel命令行工具完全指南  Laravel如何实现URL美化Slug功能_Laravel使用eloquent-sluggable生成别名【方法】  Laravel事件和监听器如何实现_Laravel Events & Listeners解耦应用的实战教程