bootstrap table分页模板和获取表中的ID方法
发布时间 - 2026-01-10 22:25:59 点击率:次1.dao层

MyBatis映射
mapper.xml中
<select id="getTcdt" parameterType="com.ls.entity.Mydata" resultMap="BaseResultMap">
select * from TB_COMMUNICATION_DEVICE_TBL ORDER BY ${ordername} ${order}
</select>
mapper.java中
public List<Tb_communication_device_tbl> getTcdt(Mydata data);//分页查询
2.业务层service
/**
* 实现分页显示
*/
@Override
public JSONObject getTcdt(Mydata data) {
// TODO Auto-generated method stub
JSONObject result=null;
List<Tb_communication_device_tbl> md=tbdao.getTcdt(data);
List<Tb_communication_device_tbl> resultList = new ArrayList<Tb_communication_device_tbl>() ;
//判断前台页面传回的值是不是空不是进行条件模糊查询
if(null!=data.getStationNr() && !data.getStationNr().trim().equals("")||data.getWellDbk()!=null&&data.getWellDbk().trim().equals("")){
for(Tb_communication_device_tbl user :md){
if(user.getStationNr().indexOf(data.getStationNr()) >= 0){
resultList.add(user);
}
}
}else{
resultList = md;
}
//获取分页数据
int pageNumber = null!=data.getDangqian() ? Integer.parseInt(data.getDangqian()) : 0;
int pageSize = null!=data.getFrist() ? Integer.parseInt(data.getFrist()) : 10;
int start = (pageNumber) * pageSize;//计算开始记录数
int end = start+pageSize;//计算结束记录数
md= new ArrayList<Tb_communication_device_tbl>() ;
for(int i=start;i<end && i<resultList.size();i++){
Tb_communication_device_tbl e=resultList.get(i);
md.add(e);
}
int total=0;
//存储值map中
Map<String, Object> map=new HashMap<String, Object>();
SimpleDateFormat sf=new SimpleDateFormat("yyyy-MM-dd");
//实现数据类型转换主要是日期类型转换成字符串
List<Mydate> list=new ArrayList<>();
for (int i = 0; i < md.size(); i++) {
Mydate my=new Mydate();
my.setAlarmVoltage(md.get(i).getAlarmVoltage());
my.setBatteryElectricQty(md.get(i).getBatteryElectricQty());
my.setInstallDate(sf.format(md.get(i).getInstallDate()));
//my(md.get(i)));
my.setDeviceClass((md.get(i).getDeviceClass()));
my.setLevelElevationAlarm((md.get(i).getLevelElevationAlarm()));
my.setNewWellDbk(md.get(i).getNewWellDbk());
my.setOperationDate(sf.format(md.get(i).getOperationDate()));
my.setReadoutFrequency(md.get(i).getReadoutFrequency());
my.setRemark(md.get(i).getRemark());
my.setReturenValueBln(md.get(i).getReturenValueBln());
/*my.setSendingcycle(md.get(i).getSendingcycle());
my.setSendingstarttime(md.get(i).getSendingstarttime());*/
my.setShowingBln(md.get(i).getShowingBln());
my.setSignalAlarm(md.get(i).getSignalAlarm());
my.setSimcardNr(md.get(i).getSimcardNr());
my.setStationNr(md.get(i).getStationNr());
my.setTransmittingFrequency(md.get(i).getTransmittingFrequency());
my.setUserId(md.get(i).getUserId());
my.setWaterTemperatureAlarm(md.get(i).getWaterTemperatureAlarm());
my.setWellDbk(md.get(i).getWellDbk());
my.setWorkingStatus(md.get(i).getWorkingStatus());
list.add(my);
}
map.put("total", resultList.size());
map.put("rows", list);
//存入返回值中
result=JSONObject.fromObject(map);
return result;
}
3.action层
public String execute(){
String pageNO=null;
String pageSize=null;
if(offset==null||limit==null){
pageNO ="0";
pageSize="10";
}else{
pageNO =offset;
pageSize=limit;
}
//给对象赋值
Mydata data=new Mydata();
data.setDangqian(pageNO);
data.setFrist(pageSize);
//System.out.println(wells);
data.setStationNr(departmentname);
data.setWellDbk(wells);
data.setOrder(order);
//点击列头获取属性因为属性和数据库列名不一样所以排序要进行修改列名
if(ordername==null){
data.setOrdername("STATION_NR");
}
if(ordername!=null){
if(ordername.equals("deviceClass")){
data.setOrdername("DEVICE_CLASS");
}
if(ordername.equals("stationNr")){
data.setOrdername("STATION_NR");
}
if(ordername.equals("batteryElectricQty")){
data.setOrdername("BATTERY_ELECTRIC_QTY");
}
if(ordername.equals("simcardNr")){
data.setOrdername("SIMCARD_NR");
}
if(ordername.equals("wellDbk")){
data.setOrdername("WELL_DBK");
}
if(ordername.equals("installDate")){
data.setOrdername("INSTALL_DATE");
}
}
result=tb_communication_device_tblservice.getTcdt(data);
list=tB_MONITOR_WELL_TBLservice.getTmwt();//获取外键的值
Map<String, Object> map=ActionContext.getContext().getSession();
map.put("list", list);//
map.put("offset2", offset);
map.put("limit1", limit);
return SUCCESS;
}
js文件
var TableInit = function () {
var oTableInit = new Object();
var stationNr=null;
var stationNr2=null;
var arr=new Array();
var arr1=new Array();
//定义查询方法
Array.prototype.indexOf = function(val) {
for (var i = 0; i < this.length; i++) {
if (this[i] == val) return i;
}
return -1;
};
Array.prototype.remove = function(val) {
var index = this.indexOf(val);
if (index > -1) {
this.splice(index, 1);
}
};
//初始化Table
oTableInit.Init = function () {
$('#tb_departments').bootstrapTable({
url: 'tcdtaction', //请求后台的URL(*)
method: 'get', //请求方式(*)
toolbar: '#toolbar', //工具按钮用哪个容器
striped: false, //是否显示行间隔色
cache: false, //是否使用缓存,默认为true,所以一般情况下需要设置一下这个属性(*)
pagination: true, //是否显示分页(*)
sortable: true, //是否启用排序
sortOrder: "asc", //排序方式
queryParams: oTableInit.queryParams, //传递参数(*)
sidePagination: "server", //分页方式:client客户端分页,server服务端分页(*)
pageNumber: 1, //初始化加载第一页,默认第一页
pageSize: 10, //每页的记录行数(*)
pageList: [10, 25, 50, 100], //可供选择的每页的行数(*)
search: false, //是否显示表格搜索,此搜索是客户端搜索,不会进服务端,所以,个人感觉意义不大
strictSearch: false,//设置为 true启用 全匹配搜索,否则为模糊搜索
// showExport表示是否显示导出的按钮,exportDataType表示导出的模式是当前页、所有数据还是选中数据。
sortable:true,//设置为false 将禁止所有列的排序
searchOnEnterKey:true,//设置为 true时,按回车触发搜索方法,否则自动触发搜索方法
showColumns: true, //是否显示所有的列
showRefresh: true, //是否显示刷新按钮
showExport: true,//是否显示导出
showpaginationswitch:true,//是否显示 数据条数选择框
minimumCountColumns: 2, //最少允许的列数
clickToSelect: true, //是否启用点击选中行
height: 532, //行高,如果没有设置height属性,表格自动根据记录条数觉得表格高度
uniqueId: "id", //每一行的唯一标识,一般为主键列
showToggle: true, //是否显示详细视图和列表视图的切换按钮
cardView: false, //是否显示详细视图
detailView: true, //是否显示父子表
exportTypes: ['csv','txt','xml'],
exportDataType: "basic",
columns: [{
align: "center",
checkbox: true
},
{
field: 'stationNr',
title: '站号',
align: "center",
sortable: true,
editable: true
}, {
field: 'deviceClass',
title: '通讯设备类型',
align: "center",
sortable: true,
editable: true
}, {
field: 'batteryElectricQty',
title: '电池电量',
align: "center",
sortable: true,
editable: true
},
{
field: 'simcardNr',
title: 'SIM卡号',
align: "center",
sortable: true,
editable: true
},
{
field: 'wellDbk',
title: '统一编号',
sortable: true,
align: "center",
editable: true
},
{
field: 'installDate',
title: '安装日期',
sortable: true,
align: "center",
editable: true
},
{
field: 'operate',
title: '操作',
sortable: true,
align: "center",
editable: true,
formatter:function(value,row,index){
var e = '<a onclick="edit(\''+ row.stationNr + '\')">查看详情</a> ';
return e;
}
},
],
onCheckAll:function(rows){//全选中
var arr2=new Array();
var arr3=new Array();
arr2=$("#tb_departments").bootstrapTable('getSelections');
for (var i = 0; i < arr2.length; i++) {
arr3=arr2[i]
for(var s in arr3)
arr.push(arr3.stationNr);//添加数值到数组\
}
var n = []; //一个新的临时数组
for(var h = 0; h < arr.length; h++) //遍历当前数组
{
//如果当前数组的第i已经保存进了临时数组,那么跳过,
//否则把当前项push到临时数组里面
if (n.indexOf(arr[h]) == -1){
n.push(arr[h]);
}
}
arr=n
document.getElementById("ddd").value=arr;
},
onUncheckAll:function(rows){//全选不中
arr=[];//清空数组
document.getElementById("ddd").value=arr;
},
onUncheck:function(row){//不选中
stationNr2=row.stationNr; //取出id
arr.remove(stationNr2);
document.getElementById("ddd").value=arr;
},
onCheck:function(row){//选中
//alert("2")
stationNr2=row.stationNr; //取出id
arr.push(stationNr2);//添加数值到数组\
//去除重复元素
var s = arr.join(",")+",";
for(var i=0;i<arr.length;i++) {
if(s.replace(arr[i]+",","").indexOf(arr[i]+",")>-1) {
arr.remove(arr[i]);
document.getElementById("ddd").value=arr;
break;
}
}
document.getElementById("ddd").value=arr;
},
onClickRow:function(row,$element){
$('.success').removeClass('success');
$($element).addClass('success');
stationNr2=row.stationNr;
arr.push(stationNr2);//添加数值到数组
//定义查询方法
Array.prototype.indexOf = function(val) {
for (var i = 0; i < this.length; i++) {
if (this[i] == val) return i;
}
return -1;
};
Array.prototype.remove = function(val) {
var index = this.indexOf(val);
if (index > -1) {
this.splice(index, 1);
}
};
//去除重复元素
var s = arr.join(",")+",";
for(var i=0;i<arr.length;i++) {
if(s.replace(arr[i]+",","").indexOf(arr[i]+",")>-1) {
arr.remove(arr[i]);
document.getElementById("ddd").value=arr;
break;
}
}
document.getElementById("ddd").value=arr;
}
});
};
//得到查询的参数
oTableInit.queryParams = function (params) {
var temp = { //这里的键的名字和控制器的变量名必须一直,这边改动,action也需要改成一样的
limit: params.limit, //页面大小
offset: params.offset, //页码
order: params.order,
ordername: params.sort,//返回排序列名
//pageSize: params.pageSize, //页面大小
//pageNumber: params.pageNumber, //页码
departmentname: $("#departmentname").val(),//返回查询条件
wells: $("#wells").val(),
};
return temp;
};
return oTableInit;
};
var ButtonInit = function () {
var oInit = new Object();
var postdata = {};
oInit.Init = function () {
//初始化页面上面的按钮事件
};
return oInit;
};
以上所述是小编给大家介绍的bootstrap table分页模板和获取表中的ID,对Get请求无效的问题,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对网站的支持!
# bootstrap
# table
# 分页
# bootstrap分页模板
# bootstrap table表格插件之服务器端分页实例代码
# bootstrap table 服务器端分页例子分享
# bootstrap-table后端分页功能完整实例
# Bootstrap table分页问题汇总
# 第一次动手实现bootstrap table分页效果
# bootstrap table插件的分页与checkbox使用详解
# BootStrap中Table分页插件使用详解
# BootStrap Table前台和后台分页对JSON格式的要求
# 使用bootstraptable插件实现表格记录的查询、分页、排序操作
# bootstrap-table实现服务器分页的示例 (spring 后台)
# BootStrap Table后台分页时前台删除最后一页所有数据refresh刷新后无数据问题
# Bootstrap table 服务器端分页功能实现方法示例
# 设置为
# 每页
# 第一页
# 小编
# 服务端
# 条数
# 客户端
# 行数
# 行间
# 在此
# 遍历
# 进了
# 给大家
# 如果没有
# 转换成
# 则为
# 所述
# 卡号
# 给我留言
相关栏目:
【
网站优化151355 】
【
网络推广146373 】
【
网络技术251813 】
【
AI营销90571 】
相关推荐:
Laravel如何使用Vite进行前端资源打包?(配置示例)
JavaScript模板引擎Template.js使用详解
Python进程池调度策略_任务分发说明【指导】
Laravel如何生成API文档?(Swagger/OpenAPI教程)
如何在阿里云虚拟服务器快速搭建网站?
Claude怎样写约束型提示词_Claude约束提示词写法【教程】
Android滚轮选择时间控件使用详解
Laravel怎么实现软删除SoftDeletes_Laravel模型回收站功能与数据恢复【步骤】
如何为不同团队 ID 动态生成多个非值班状态按钮
大型企业网站制作流程,做网站需要注册公司吗?
简单实现Android验证码
Laravel怎么实现微信登录_Laravel Socialite第三方登录集成
Laravel任务队列怎么用_Laravel Queues异步处理任务提升应用性能
Android利用动画实现背景逐渐变暗
详解一款开源免费的.NET文档操作组件DocX(.NET组件介绍之一)
Laravel如何实现事件和监听器?(Event & Listener实战)
北京企业网站设计制作公司,北京铁路集团官方网站?
Laravel如何实现用户角色和权限系统_Laravel角色权限管理机制
如何在IIS服务器上快速部署高效网站?
C++用Dijkstra(迪杰斯特拉)算法求最短路径
jQuery 常见小例汇总
android nfc常用标签读取总结
高性能网站服务器配置指南:安全稳定与高效建站核心方案
香港服务器租用费用高吗?如何避免常见误区?
DeepSeek是免费使用的吗 DeepSeek收费模式与Pro版本功能详解
Thinkphp 中 distinct 的用法解析
Laravel Asset编译怎么配置_Laravel Vite前端构建工具使用
Laravel怎么实现API接口鉴权_Laravel Sanctum令牌生成与请求验证【教程】
Laravel怎么实现模型属性转换Casting_Laravel自动将JSON字段转为数组【技巧】
Gemini手机端怎么发图片_Gemini手机端发图方法【步骤】
原生JS获取元素集合的子元素宽度实例
如何快速搭建个人网站并优化SEO?
如何在云主机快速搭建网站站点?
高防服务器租用首荐平台,企业级优惠套餐快速部署
Laravel如何正确地在控制器和模型之间分配逻辑_Laravel代码职责分离与架构建议
javascript基本数据类型及类型检测常用方法小结
1688铺货到淘宝怎么操作 1688一键铺货到自己店铺详细步骤
移动端脚本框架Hammer.js
Laravel Eloquent访问器与修改器是什么_Laravel Accessors & Mutators数据处理技巧
html如何与html链接_实现多个HTML页面互相链接【互相】
js实现获取鼠标当前的位置
Laravel怎么清理缓存_Laravel optimize clear命令详解
Laravel如何使用Gate和Policy进行授权?(权限控制)
Laravel如何配置Horizon来管理队列?(安装和使用)
Zeus浏览器网页版官网入口 宙斯浏览器官网在线通道
Windows10电脑怎么设置虚拟光驱_Win10右键装载ISO镜像文件
如何在HTML表单中获取用户输入并结合JavaScript动态控制复利计算循环
网易LOFTER官网链接 老福特网页版登录地址
高端企业智能建站程序:SEO优化与响应式模板定制开发
手机网站制作平台,手机靓号代理商怎么制作属于自己的手机靓号网站?

