Loading [MathJax]/jax/output/CommonHTML/config.js
前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >Jquery Datatable的使用样例(ssm+bootstrsp框架下)服务器端分页

Jquery Datatable的使用样例(ssm+bootstrsp框架下)服务器端分页

作者头像
微风-- 轻许--
发布于 2022-04-13 01:08:52
发布于 2022-04-13 01:08:52
1.8K00
代码可运行
举报
文章被收录于专栏:java 微风java 微风
运行总次数:0
代码可运行

效果:

我这个表格数据 比较少没有第2页

有多例多页的效果(带滚动条和翻页):

1. jsp页面:

表格声明部分:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
 <div class="row">
             <div class="col-md-12 col-sm-12 col-xs-12">
               <div class="x_panel">
                  <div class="x_title">
                    <h2>权限角色管理 </h2>
                    <ul class="nav navbar-right panel_toolbox">
                      	<li><a class="collapse-link"><i class="fa fa-chevron-up"></i></a></li>
             			<li><a href="javascript:void(0);" id="add"><i class="fa fa-plus"></i></a></li>
                    </ul>
                    <div class="clearfix"></div>
                  </div>
                 <div class="x_content">
                 	<div class="form-inline">
	                	<label>角色名称:
		                	<input id="theRoleName" type="text" class="form-control input-sm" placeholder="输入角色名称" style="width: 100px;">
	                 	</label>   
	                   	<button class="btn btn-success btn-sm" style="margin-bottom:0;" onclick="javascript: myTable.ajax.url('system/getAuthRoleList').load();">
	                   		<i class="fa fa-search">查询</i>
	                   	</button>
	                   	<button class="btn btn-info btn-sm" style="margin-bottom:0;" onclick="reset();"><i class="fa fa-undo">重置</i></button>
	                </div>
                   <table id="datatable" class="table table-striped table-bordered">
                     <thead>
                       	<tr>
                         	<th width="120px">序号</th>
				<th width="340px">角色名称</th>
				<th width="440px">角色资源字串</th>
				<th>操作</th>
                       	</tr>
                     </thead>
                   </table>
                 </div>
               </div>
             </div>
        </div>

表格初始化部分:

页面加载的时候 会自动初始化表格,从后端查出数据装入表中。

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
	    <!-- 分页相关JS -->
	    <script src="css/vendors/datatables.net/js/jquery.dataTables.min.js"></script>
	    <script src="css/vendors/datatables.net-bs/js/dataTables.bootstrap.js"></script>
	
		
		<script type="text/javascript">
			
			var myTable
			$(function() {
				
				
				//初始化表格对象
	    	  	    myTable =  $('#datatable').DataTable({
		        	dom: 'irtlp',
		                searching: false,
		        	processing: true,
		            	serverSide: true,
		        	paging: true,
		        	info: true,
		        	scrollX: true, //列太多,超过显示长度需要滚动条时使用
		        	ajax: {
		                url: "system/getAuthRoleList",// 数据请求地址
		                type: "POST",
		                data: function (params) {
		                	//此处为定义查询条件 传给控制器的参数
		                	//角色名称
		                    params.roleName = $("#theRoleName").val()
		                }
		            },
		        	columns: [
	       	            	{ data: "id" },
	       	            	{ data: "roleName" },
	       	         	{ data: "resourcesIds" }
		        	],
		        	columnDefs: [{
		        		targets: 3,// 操作例的位置,从0开始数为第几例,
		                data: "id",
		                width: 140,
		                "render": function(data, type, full){
		                    return  "<a id='upd' class='btn btn-info btn-xs'><i class='fa fa-pencil'></i>修改权限</a>"
		                   + "<button class='btn btn-danger btn-xs' onclick='deleteRoleRes("+data+")'><i class='fa fa-remove'></i> 删除</button>"
			            }
	 	            }],
		        	language: {url: "css/vendors/language-zh.json"}
	          	 });
				    <!-- 分页相关JS -->
	    <script src="css/vendors/datatables.net/js/jquery.dataTables.min.js"></script>
	    <script src="css/vendors/datatables.net-bs/js/dataTables.bootstrap.js"></script>
	
		
		<script type="text/javascript">
			
			var myTable
			$(function() {
				
				
				//初始化表格对象
	    	  	    myTable =  $('#datatable').DataTable({
		        	dom: 'irtlp',
		                searching: false,
		        	processing: true,
		            	serverSide: true,
		        	paging: true,
		        	info: true,
		        	scrollX: true, //列太多,超过显示长度需要滚动条时使用
		        	ajax: {
		                url: "system/getAuthRoleList",// 数据请求地址
		                type: "POST",
		                data: function (params) {
		                	//此处为定义查询条件 传给控制器的参数
		                	//角色名称
		                    params.roleName = $("#theRoleName").val()
		                }
		            },
		        	columns: [
	       	            	{ data: "id" },
	       	            	{ data: "roleName" },
	       	         	{ data: "resourcesIds" }
		        	],
		        	columnDefs: [{
		        		targets: 3,// 操作例的位置,从0开始数为第几例,
		                data: "id",
		                width: 140,
		                "render": function(data, type, full){
		                    return  "<a id='upd' class='btn btn-info btn-xs'><i class='fa fa-pencil'></i>修改权限</a>"
		                   + "<button class='btn btn-danger btn-xs' οnclick='deleteRoleRes("+data+")'><i class='fa fa-remove'></i> 删除</button>"
			            }
	 	            }],
		        	language: {url: "css/vendors/language-zh.json"}
	          	 });

2. 通过 数据请求地址 找到对应的控制器方法:

参数: draw : 不用管

start : 从第N条开始

length : 每页显示N条

roleName :查询条件(此处是一个角色表,用于查询角色名为N的结果)

返回的参数:recordsTotal、recordsFiltered 都是结果集总记录数。data:结果集。draw:原样返回。

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
	/**
	 * 加载权限角色列表
	 * @param draw
	 * @param start
	 * @param length
	 * @param roleName
	 * @return
	 * @throws Exception
	 */
	@ResponseBody
	@RequestMapping("/getAuthRoleList")
	public Object getAuthRoleList(int draw, int start, int length, String roleName)throws Exception{
		
		_logger.info("+++++++++++++++++++++++  展示权限角色列表  +++++++++++++++++++++++ ");
		PageInfo<AuthRole> pageInfo = _authRoleService.selectAuthRoleByPage((start/length)+1, length, roleName);
		
		Map<String, Object> map = new HashMap<String, Object>();
		List<Object> data = new ArrayList<Object>();
		for(AuthRole res : pageInfo.getList()){
			Map<String, Object> obj = new HashMap<String, Object>();
			obj.put("id", res.getId());
			obj.put("roleName", res.getRoleName());
			obj.put("resourcesIds", res.getResourcesIds());
			data.add(obj);
		}
		
		map.put("draw", draw);
		map.put("recordsTotal", pageInfo.getTotal());
		map.put("recordsFiltered", pageInfo.getTotal());
		map.put("data", data);
		return map;
	}

只要把后端数据查出来,处理为要求的json格式数据返回给datatable就是了。

我的代码分页有用pagehelper分页插件。可以不用插件自己写分页sql一样的。只要返回的数据格式对了,datatable就能解析。

3.pageHelper的用法 :http://blog.csdn.net/jiangyu1013/article/details/56287388点击打开链接

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2017/02/21 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
暂无评论
推荐阅读
编辑精选文章
换一批
分页插件pageHelpler的使用(ssm框架中)服务器端分页
4. serviceImpl 中接收从mapper.xml中查到的结果,运用pagehelper分页 。
微风-- 轻许--
2022/04/13
9750
datatables,表格
官方文档:https://datatables.net/ var dttblTaskOrderOptions={ order: [5, 'desc'], ajax:{ url:"order/orderdelivery/search", type:"POST", data:function(data){ return JSON.stringify($.extend(data,dttblTaskOrderCondition)); }, dataType:"json", contentType:"applicat
windseek
2018/06/14
1.3K1
day02_品优购电商项目_02_前端框架AngularJS入门 + 品牌列表的实现 + 品牌列表分页的实现 + 增加/修改/删除品牌的实现 + 品牌分页条件查询的实现_用心笔记
我们的数据一般都是从后端获取的,那么如何获取数据呢?我们一般使用内置服务$http来实现。注意:以下代码需要在tomcat中运行。
黑泽君
2019/02/25
9.1K0
day02_品优购电商项目_02_前端框架AngularJS入门 + 品牌列表的实现 + 品牌列表分页的实现 + 增加/修改/删除品牌的实现 + 品牌分页条件查询的实现_用心笔记
python测试开发django-120.bootstrap-table表格添加操作按钮(查看/修改/删除)
接着前面这篇https://www.cnblogs.com/yoyoketang/p/15242055.html 在columns最后添加一个操作项,formatter属性可以帮助我们更加灵活的显示表格中的内容
上海-悠悠
2021/09/14
1.1K0
SpringBoot+MyBatisPlus+Thymeleaf+AdminLTE增删改查实战
发布者:全栈程序员栈长,转载请注明出处:https://javaforall.cn/164542.html原文链接:https://javaforall.cn
全栈程序员站长
2022/09/18
1K0
SpringBoot+MyBatisPlus+Thymeleaf+AdminLTE增删改查实战
datatables 配套bootstrap样式使用小结(2) ajax篇
上一篇是介绍一下基本的用法,基本的原理是取出所有的数据,然后调用$.datatables(option)方法格式化,这种方法显然不太科学,所以ajax方式是必须的。
_淡定_
2018/08/24
2.1K0
datatables 配套bootstrap样式使用小结(2) ajax篇
高德地图宽度不固定的信息窗口位置偏下的解决方法
解决方法: 在setTimeout中设置宽度,原因是刚打开信息窗口Dom结构还没完全生成,获取不到元素
tianyawhl
2019/09/04
1.6K0
杨校老师课堂之就业信息平台
1. 创建maven项目 <?xml version="1.0" encoding="UTF-8"?> <project xmlns="http://maven.apache.org/POM/4.0.
杨校
2021/05/13
8950
jquery datatable 参数
$(document).ready(function(){      $('#example').dataTable();  });   // 另一个例子 $(document).ready(function(){      $('#example').dataTable({   "bInfo": false     });  });  
kl博主
2023/11/17
3860
使用ABP打造SAAS系统(2)——前端框架选择[通俗易懂]
  作者用过的前端框架不少,曾经还在一个项目中同时使用两套框架控件(年少无知、效率特慢),所以可供选择的前端框架有不少:
全栈程序员站长
2022/11/04
2.5K0
使用ABP打造SAAS系统(2)——前端框架选择[通俗易懂]
Bootstrap Table表格分页的使用及分页数据(Excel)导出
1:引入Bootstrap Table表格插件相关链接:这里直接拿来用就可以了,如果要下载到本地,可以自行去官网下载。
王小婷
2019/03/15
5.4K0
Bootstrap Table表格分页的使用及分页数据(Excel)导出
python测试开发django-121.bootstrap-table弹出模态框修表格数据提交
整个body内容如下,模态框设置id属性id=”myModal” 修改按钮的id属性id=”btn_edit”
上海-悠悠
2021/09/14
1.4K0
bootstrap 查询 展示 分页 常用**
<!doctype html> <html> <head> <meta charset="utf-8"> <title>联想控股</title> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <script src="http://code.jquery.com/jquery.js"></script> <script src="js/bootstrap.min.js"></script> <link rel="stylesheet" type="text/css" href="http://sandbox.runjs.cn/uploads/rs/238/n8vhm36h/bootstrap.min.css"> <link rel="stylesheet" type="text/css" href="http://sandbox.runjs.cn/uploads/rs/238/n8vhm36h/bootstrap-responsiv.css"> <link rel="stylesheet" type="text/css" href="http://sandbox.runjs.cn/uploads/rs/238/n8vhm36h/dataTables.bootstra.css"> </head> <body> <div class="container"> <div class="row" style="padding-bottom: 20px;margin-top:20px;"> <div class="col-md-9"> <div class="input-group"> <input id="searchString" type="text" style="height:28px;" class="form-control" placeholder="请输入实体名"> <span class="input-group-btn">    <button type="button" class="btn btn-info" onclick="search()" onkeypress="Enter()"> <span class="glyphicon glyphicon-search" aria-hidden="true"/> 搜索 </button> </span> </div> </div> </div>
用户5760343
2019/07/05
2.2K0
datatables使用教程
版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
suveng
2019/09/18
7.4K1
datatables使用教程
java实现文件对比
web项目需要实现文件内容对比功能,开发语言是java,也就是通过java实现类似于svn的文件对比功能
六月的雨在Tencent
2024/03/29
2470
java实现文件对比
Bootstrap框架
Bootstrap介绍 Bootstrap是Twitter开源的基于HTML、CSS、JavaScript的前端框架。 它是为实现快速开发Web应用程序而设计的一套前端工具包。 它支持响应式布局,并且在V3版本之后坚持移动设备优先。 为什么要使用Bootstrap? 在Bootstrap出现之前: 命名:重复、复杂、无意义(想个名字费劲) 样式:重复、冗余、不规范、不和谐 页面:错乱、不规范、不和谐 在使用Bootstrap之后: 各种命名都统一并且规范化。 页面风格统一,画面和谐。 Bootstrap下载
人生不如戏
2018/04/12
4K0
Bootstrap框架的简单使用
Bootstrap 是由 Twitter 公司开发维护的简洁、直观、强悍的前端开发 UI 框架,它提供了大量编写好的 CSS 样式,允许开发者结合一定HTML 结构及JavaScript,快速编写功能完善的网页及常见交互效果,让web开发更迅速、简单。
岳泽以
2022/10/26
3.8K0
Bootstrap框架的简单使用
python测试开发django-126.bootstrap-table表格内操作按钮(修改/删除) 功能实现
希望实现效果: 1、点表格后面的修改按钮,能修改对应行的数据 2、点表格后面的删除按钮,删除对应的行
上海-悠悠
2021/10/08
1.9K0
拿来主义:layPage分页插件的使用
所谓插件,大概就是项目中可插可拔的比较小功能化的组件;这些功能组件若能力可及,自己也可以完成——也即自己造轮子,但翻看各种技术社区,相关领域的神人们往往会有更好的实现方案贡献出来,这个时候你只需要满怀崇敬之心、感激之情,在遵循别人的使用约定的前提下拿过来应用在自己的项目中即可,省却了很多自造车轮的成本。就像苹果造机,虽名苹果,但其零部件全都是世界各地各个功能厂商共同贡献的结果。编程亦是此理,博主入编程的坑稍晚,但也越发的感觉到,在各种功能组件以及技术框架越来越普遍且适用的今天,正是依靠技术互助共享的精神力量,编程才变得越来越简单、快捷的。瞎哔哔了这么多,博主只想说,我虽没有造轮子的能力,但力所能及的,就是尽量将自己的技术积累以博客的形式记录、分享,自己成长为大菜鸟的同时,也期望能帮到更多的小菜鸟——造车轮子咱不会,但告诉别人如何使用,也算是功德一件。
用户1615728
2019/02/13
1.4K0
拿来主义:layPage分页插件的使用
dataTables 使用ajax 和服务器处理 获取数据
Datatables是一款jquery表格插件。它是一个高度灵活的工具,可以将任何HTML表格添加高级的交互功能。 官网:https://datatables.net/ 中文网:https://datatables.club/
Alone88
2019/10/22
5.2K0
推荐阅读
相关推荐
分页插件pageHelpler的使用(ssm框架中)服务器端分页
更多 >
领券
💥开发者 MCP广场重磅上线!
精选全网热门MCP server,让你的AI更好用 🚀
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
本文部分代码块支持一键运行,欢迎体验
本文部分代码块支持一键运行,欢迎体验