jsp页面关建字查询出记录后,点下一页关键字会清空,怎么保持关键字不变而进行下一页操作?
解决方案一:
1 把关键字带回后台,从后台再次传入!
2 把关键字传入cookie,从cookie获取
3 把表格一栏放在iframe中,搜索时,刷新iframe即可
解决方案二:
用2个div分开就行,就是说上面关键字那个行里的所有放在一个div里,下面table放在另一个div里。我就是那样实现的
解决方案三:
关键字做参数提交,每页都获取这个参数,重新给关键字查询赋值,并且分页每次查询都去input标签的value值即可。这次用的这个思路解决的,很简单,每次查询后将模糊查询关键字通过如下代码返回到页面:
modelMap.addAttribute("telePhoneNo",telePhoneNo);
modelMap.addAttribute("userName",userName);
前台的form中的input标签中用EL标签给value属性复制就可了,完整代码如下:
<div class="row" style="margin-top:10px;">
<div class="col-md-12">
<form action="${ctx}/member/list" method="post" id="selectForm">
<div class="form-inline compact">
<div class="form-group">
<div class="form-group">
<label for="">登录名称</label>
</div>
<div class="input-group">
<input class="form-control input-sm" id="userName" name="userName" type="text" value="${userName}">
</div>
</div>
<div class="form-group">
<div class="form-group">
<label for="">手机号码</label>
</div>
<div class="input-group">
<input class="form-control input-sm" id="telePhoneNo" name="telePhoneNo" type="text" value="${telePhoneNo}">
</div>
</div>
<button type="submit" class="btn btn-primary btn-sm" style="margin-left:15px;">查询</button>
</div>
</form>
</div>
</div>
<c:if test="${pageInfo.list!=null}">
<div class="row" style="margint-top:10px;">
<div class="col-md-12">
<div id="sample_2_wrapper" class="dataTables_wrapper no-footer">
<div class="table-scrollable">
<table id="users_table"
class="table table-striped table-bordered table-hover dataTable no-footer"
role="grid" aria-describedby="sample_2_info">
<thead>
<tr role="row">
<th rowspan="1" colspan="1" style="width: 20px;text-align: center;">
序号</th>
<th rowspan="1" colspan="1" style="width: 80px;">
用户名</th>
<th rowspan="1" colspan="1" style="width: 80px;">
手机号</th>
<th rowspan="1" colspan="1" style="width: 60px;">
城市</th>
<th rowspan="1" colspan="1" style="width: 60px;">
生日</th>
</tr>
</thead>
<tbody>
<c:forEach items="${pageInfo.list}" var="rate" varStatus="status">
<c:if test="${status.index%2==0}">
<tr class="even">
</c:if>
<c:if test="${status.index%2>0}">
<tr class="odd">
</c:if>
<td style="text-align: center;">${status.index + 1}</td>
<td>${rate.userName}</td>
<td>${rate.telePhoneNo}</td>
<td>${rate.city}</td>
<td><fmt:formatDate value="${rate.birthDate}" pattern="yyyy-MM-dd HH:mm:ss"/></td>
</tr>
</c:forEach>
</tbody>
</table>
</div>
<!--显示分页信息-->
<div class="row">
<!--文字信息-->
<div class="col-md-6">
当前第 ${pageInfo.pageNum} 页.总共 ${pageInfo.pages} 页.一共 ${pageInfo.total} 条记录
</div>
<!--点击分页-->
<div class="col-md-6">
<nav aria-label="Page navigation">
<ul class="pagination">
<li><a href="#" id = "firstPage" onclick="firstPage()">首页</a></li>
<!--上一页-->
<li>
<c:if test="${pageInfo.hasPreviousPage}">
<a href="#" id="priviewPage" onclick="priviewPage()" aria-label="Previous">
<span aria-hidden="true">«</span>
</a>
</c:if>
</li>
<!--循环遍历连续显示的页面,若是当前页就高亮显示,并且没有链接-->
<c:forEach items="${pageInfo.navigatepageNums}" var="page_num">
<c:if test="${page_num == pageInfo.pageNum}">
<li class="active"><a href="#">${page_num}</a></li>
</c:if>
<c:if test="${page_num != pageInfo.pageNum}">
<li><a href="${pageContext.request.contextPath}/member/list?pageNum=${page_num}&pageSize=10" id="everyPage" onclick="everyPage()">${page_num}</a></li>
</c:if>
</c:forEach>
<!--下一页-->
<li>
<c:if test="${pageInfo.hasNextPage}">
<a href="javascript:void(0);" id="nextPage" onclick="nextPage()" aria-label="Next">
<span aria-hidden="true">»</span>
</a>
</c:if>
</li>
<li><a href="#" id="lastPage" onclick="lastPage()">尾页</a></li>
</ul>
</nav>
</div>
</div>
</div>
</div>
</div>
</c:if>
<script>
/*Paging begin*/
function firstPage() {
document.getElementById("firstPage").href="${pageContext.request.contextPath}/member/list?pageNum=1&pageSize=10&telePhoneNo="+document.getElementById("telePhoneNo").value+"&userName="+
document.getElementById("userName").value;
}
function priviewPage() {
document.getElementById("priviewPage").href="${pageContext.request.contextPath}/member/list?pageNum=${pageInfo.pageNum-1}&pageSize=10&telePhoneNo="+document.getElementById("telePhoneNo").value+"&userName="+
document.getElementById("userName").value;
}
function everyPage() {
document.getElementById("everyPage").href +="&telePhoneNo="+document.getElementById("telePhoneNo").value+"&userName="+
document.getElementById("userName").value;
}
function nextPage() {
document.getElementById("nextPage").href="${pageContext.request.contextPath}/member/list?pageNum=${pageInfo.pageNum+1}&telePhoneNo="+document.getElementById("telePhoneNo").value+"&userName="+
document.getElementById("userName").value;
}
function lastPage() {
document.getElementById("lastPage").href="${pageContext.request.contextPath}/member/list?pageNum=${pageInfo.pages}&pageSize=10&telePhoneNo="+document.getElementById("telePhoneNo").value+"&userName="+
document.getElementById("userName").value;
}
/*Paging end*/
</script>
后台代码就简单了,不说了,用SpringMVC接接收参数,用PageHelper插件做分页即可,这个可以看作是PageHelper的页面实践。
jsp页面关建字查询出记录后,点下一页关键字会清空,怎么保持关键字不变而进行下一页操作?的更多相关文章
- /etc/ssh/sshd_config 关建字:PermitRootLogin no 禁示以root身份登录服务器
这种情况,不会影响,普通用户su到root
- /etc/ssh/sshd_config 关建字:AllowUsers root test01
新加用户,在AllowUsers 新增的用户名,重启sshd后,新增的用户才能登录服务器.
- JSP+Servlet+javabean+mysql实现页面多条件模糊查询
需求: 一般列表页上面会有一个查询框,有各种的查询条件组合,一般都采用模糊查询方式 ,以下以自己做的实例来说明一下实现方法: 需要实现的界面原型:要满足条件: 1.单选分类,点GO按扭 2.单独输入标 ...
- Web项目中用模板Jsp页面引入所有静态样式脚本文件(js,css等)
这样的好处是不需要再每个页面中都添加太多的外链接(不会减少请求数量),但对开发会更快捷,如果更改这些文件的位置或名称,只需要更改模板文件,不需要一个一个页面复制粘贴:同时可以为不同jsp页面组创建不同 ...
- jsp页面元素和内置对象
java server pages其根本是一个简化的servlet设计.实现了在java当中使用html标签.javaEE标准 一.页面元素 1.静态内容 html.js.css相关标签元素. 2.指 ...
- 数据库中的记录通过servlet回显到jsp页面中(连接数据库或者查询參照:对数据进行增删改查)
我们常常会用到通过图书的名称来查询图书那么这种话我们也就会使用到从数据库中搜索出数据而且载入到自己的Jsp页面中 这种话我们须要将从数据库中获取到的数据放进响应中然后通过%=request.getAt ...
- 自建目录中jsp页面访问servlet路径出错404
---恢复内容开始--- 自建目录中jsp页面访问servlet路径出错404 使用eclipse建立的项目,总是会遇到路径问题,比如jsp页面访问servlet,jsp在默认的路径.jsp在自建目录 ...
- JSP页面动态查询添加数据与分页数据显示
1 . <%@ page language="java" contentType="text/html; charset=UTF-8"%> < ...
- MySQL:如何查询出每个分组中的 top n 条记录?
问题描述 需求: 查询出每月 order_amount(订单金额) 排行前3的记录. 例如对于2019-02,查询结果中就应该是这3条: 解决方法 MySQL 5.7 和 MySQL 8.0 有不同的 ...
随机推荐
- Bootstrap启动(关闭)轮播
$('.carousel').carousel(); //启动轮播 $('.carousel').carousel(‘pause’); //关闭轮播 $(‘.carousel’).carousel({ ...
- 神奇的CSS形状
在StackOverflow上有这么一个问题,有位同学在 http://css-tricks.com/examples/ShapesOfCSS/ 找到一些使用CSS做的形状,其中一位同学对下面的这个形 ...
- fidder抓包使用(一)
fidder是会占用 jupyter 端口的,在fidder里边最上边找到tools--->options-->connections里边的8888改成别的重启jupyter就好了
- Leetcode606.Construct String from Binary Tree根据二叉树创建字符串
你需要采用前序遍历的方式,将一个二叉树转换成一个由括号和整数组成的字符串. 空节点则用一对空括号 "()" 表示.而且你需要省略所有不影响字符串与原始二叉树之间的一对一映射关系的空 ...
- OSGi教程:Class Space Consistency
此教程基于OSGi Core Release 7 OSGi类空间的一致性 详细内容上面英文教程有详细解答 下面主要是一些个人见解,若有不当之处,欢迎指出: "Class space cons ...
- PHP配置环境中开启GD库
下配置好的PHP环境中,GD库不像windows那样可以直接用,而是默认关闭,需要把它打开,去到php.ini文件中 找到php_gd2.dll把分号去掉即可.(注:GD库跟绘制二维码等有关)
- POJ1655 Balancing Art
Balancing Act Time Limit: 1000MS Memory Limit: 65536K Total Submissions: 13865 Accepted: 5880 De ...
- 【水滴石穿】react-native-ble-demo
项目的话,是想打开蓝牙,然后连接设备 点击已经连接的设备,我们会看到一些设备 不过我这边在开启蓝牙的时候报错了 先放作者的项目地址: https://github.com/hezhii/react-n ...
- laravel微信自定义分享
https://blog.csdn.net/weixin_41530218/article/details/80777036 今天接触到了微信分享,来记录一下自己所理解的一些逻辑,首先,我画了一个草图 ...
- R是用于统计分析、绘图的语言和操作环境
R是一套完整的数据处理.计算和制图软件系统.其功能包括:数据存储和处理系统:数组运算工具(其向量.矩阵运算方面功能尤其强大):完整连贯的统计分析工具:优秀的统计制图功能:简便而强大的编程语言:可操纵数 ...