BootStrap Table对前台页面表格的支持实例讲解
发布时间 - 2026-01-10 22:00:48 点击率:次1、bootstrap-table是在bootstrap的基础上面做了一些封装,所以在使用bootstrap-table之前要导入的js和css有

1)基本的还是jQuery
<script type="text/javascript" src="js/jquery.min.js?v=2.1.4"></script>
2)引入bootstrap
<script type="text/javascript" src="js/bootstrap.min.js?v=3.3.6"></script> <link rel="stylesheet" href="css/bootstrap.min14ed.css?v=3.3.6">
3)引入bootstrap-table
<script type="text/javascript" src="js/plugins/bootstrap-table/bootstrap-table.min.js"></script> <link rel="stylesheet" href="css/plugins/bootstrap-table/bootstrap-table.min.css">
2、页面的编写方式(建议)
<div class="table"> <table id="publish_model"></table> </div>
3、具体的数据加载和处理都在js里面完成,具体的实现过程不用自己去写,bootstrap-table都写好了
//这里是js的具体代码的样式处理
dynamicTable = $("#publish_model").bootstrapTable("destroy").bootstrapTable({
url: "model/getPublishModel",
striped: true,
pagination: true,
singleSelect: true,
clickToSelect: true,
pageNumber:1,
pageSize: 10,
pageList: [5, 10, 20],
sidePagination: "server",
queryParamsType: "limit",
queryParams: getPageMessage,
minimunCountColumns: 2,
height:$(window).height()*0.85,
columns:[{
field:"modelName",
title:"模型名称",
align: "center",
},{
field:"modelDescription",
title:"模型描述",
align: "center"
},{
field:"executeType",
title:"执行类型",
align: "center"
},{
field:"typeName",
title:"模型类型",
align: "center"
},{
field:"price",
title:"价格",
align: "center"
},{
field:"publishDate",
title:"发布时间",
align: "center",
formatter: function(v){
var date = new Date(v).format("yyyy-MM-dd hh:mm:ss");
return "<span>"+date+"</span>";
}
},{
field:"shortcutOperation",
title:"快捷操作",
align: "center",
formatter: function(v,r,i){
var str = "<div class='btn-group'>"+
"<button id="+r.modelId+" class='btn btn-success btn-xs' onclick='applyReason(\""+r.modelId+"\")'>申请权限</button>"+
"</div>"
if(r.status=='00'){
var str = "<div class='btn-group'>"+
"<button class='btn btn-success btn-xs' style='background:#ccc;border-color:#ccc;' >已申请</button>"+
"</div>"
}
return str;
}
}]
});
//传递参数到后台
function getPageMessage(params){
var temp={
limit: params.limit,
offset: params.offset,
modelName:$("#model_name").val(),
typeId:$("#modelType").val()
};
return temp;
}
这里说明几个问题:
1)这里加入这部分( bootstrapTable("destroy") )的目的是页面存在刷新效果需要重新加载
2)相对应的设置参考官方文档:http://bootstrap-table.wenzhixin.net.cn/documentation/
3)后面简单说一下具体的效果设置:在具体的单元格数据中可以使用formatter()方法来实现,其中存在3个值v,r,i分别是值,行数据,角标。具体的效果可以参考着bootstrap的方式来实现通过return的方式来给页面呈现不一样的效果,当然也可以设置直接设置效果通过cellStyle方法也是可以的!
4)传参:这个根据个人的一个实现功能来做,不管有没有数据,后台传过去的不是null而是""。limit和offset是做分页处理需要传给后台
4、然后就是后台的一个处理(很重要)
@RequestMapping("/getPublishModel")
@ResponseBody
public Map<String, Object> getModelPublishList(Integer limit,Integer offset,String modelName,String typeId,HttpServletResponse response) throws IOException{
//设置相应数据格式
response.setContentType("application/json;charset=utf-8");
try {
// 获取相应数据
Map<String, Object> modelList = modelManager
.getModelPublishListData(limit, offset, modelName,typeId);
return modelList;
} catch (Exception e) {
e.printStackTrace();
throw e;
} finally {
HibernateSessionFactory.closeSession();
}
}
说明:
1)数据返回的形式:
Map<String, Object> map = new HashMap<String,Object>();
map.put("total", "分页时采用的数据总条数");//这里可以单独写一个sql来实现总条数
map.put("rows", "数据的list集合");//这里可以获取相对应的数据
注意:因为前台和字段名字要对应所以,list的泛型可以是对象的形式,也可以是Map<String, Object>的形式
List list = querySql.setResultTransformer(Transformers.ALIAS_TO_ENTITY_MAP).list();//这是我用hibernate执行的map结果会自动封装成Map
sql里面一定要设置别名,比如:m.modelId AS modelId等
2)返回的时候通过json的方式放回,这里不建议springmvc自动返回,建议通过PrintWriter的方式写出到前台,不然会出现json方面的错误。
5、展示效果
提示:搜索功能需要自己做,传入的参数也是通过上面的传入
6.问题:因为考虑到接送的传输问题,在bootstrap-table里面存在post请求的问题,这也是我一直没有解决的问题!
1)因为bootstrap-table对post请求进行了封装,在使用post请求的时候取不到数据(我也在研究这个问题,希望高人指点)
2)后台数据封装的字段名问题,必须要一样才可以,不用别名返回的是字段名1234。。这个是因为hibernate造成的,其他框架略过
# bootstrap
# table
# 表格
# 前台页面
# 教大家轻松制作Bootstrap漂亮表格(table)
# Bootstrap Table表格一直加载(load)不了数据的快速解决方法
# JS表格组件BootstrapTable行内编辑解决方案x-editable
# BootStrap table表格插件自适应固定表头(超好用)
# 值得分享的轻量级Bootstrap Table表格插件
# JS组件系列之Bootstrap table表格组件神器【终结篇】
# JS组件Bootstrap Table表格多行拖拽效果实现代码
# JS组件Bootstrap Table表格行拖拽效果实现代码
# 来实现
# 分页
# 相对应
# 条数
# 的是
# 这是
# 字段名
# 加载
# 发布时间
# 是在
# 是因为
# 好了
# 都在
# 也在
# 这个问题
# 我一直
# 这部
# 我用
# 才可以
# 很重要
相关栏目:
【
网站优化151355 】
【
网络推广146373 】
【
网络技术251813 】
【
AI营销90571 】
相关推荐:
微信推文制作网站有哪些,怎么做微信推文,急?
Laravel如何创建自定义Facades?(详细步骤)
如何在企业微信快速生成手机电脑官网?
jQuery 常见小例汇总
标题:Vue + Vuex 项目中正确使用 JWT 进行身份认证的实践指南
如何在橙子建站中快速调整背景颜色?
Laravel Blade组件怎么用_Laravel可复用视图组件的创建与使用
香港代理服务器配置指南:高匿IP选择、跨境加速与SEO优化技巧
零基础网站服务器架设实战:轻量应用与域名解析配置指南
Laravel Eloquent:优雅地将关联模型字段扁平化到主模型中
Laravel Pest测试框架怎么用_从PHPUnit转向Pest的Laravel测试教程
打造顶配客厅影院,这份100寸电视推荐名单请查收
如何制作新型网站程序文件,新型止水鱼鳞网要拆除吗?
html5源代码发行怎么设置权限_访问权限控制方法与实践【指南】
如何在阿里云虚拟服务器快速搭建网站?
Laravel如何使用Spatie Media Library_Laravel图片上传管理与缩略图生成【步骤】
如何挑选高效建站主机与优质域名?
弹幕视频网站制作教程下载,弹幕视频网站是什么意思?
个人网站制作流程图片大全,个人网站如何注销?
阿里云高弹*务器配置方案|支持分布式架构与多节点部署
Win11怎么关闭专注助手 Win11关闭免打扰模式设置【操作】
如何在IIS服务器上快速部署高效网站?
Python进程池调度策略_任务分发说明【指导】
千问怎样用提示词获取健康建议_千问健康类提示词注意事项【指南】
深圳网站制作平台,深圳市做网站好的公司有哪些?
linux top下的 minerd 木马清除方法
Laravel如何从数据库删除数据_Laravel destroy和delete方法区别
Claude怎样写约束型提示词_Claude约束提示词写法【教程】
laravel怎么在请求结束后执行任务(Terminable Middleware)_laravel Terminable Middleware请求结束任务执行方法
Laravel如何优化应用性能?(缓存和优化命令)
悟空识字如何进行跟读录音_悟空识字开启麦克风权限与录音
做企业网站制作流程,企业网站制作基本流程有哪些?
Laravel的.env文件有什么用_Laravel环境变量配置与管理详解
iOS发送验证码倒计时应用
深圳网站制作公司好吗,在深圳找工作哪个网站最好啊?
Linux系统命令中tree命令详解
Laravel怎么使用Intervention Image库处理图片上传和缩放
东莞市网站制作公司有哪些,东莞找工作用什么网站好?
Laravel Octane如何提升性能_使用Laravel Octane加速你的应用
香港服务器网站推广:SEO优化与外贸独立站搭建策略
电商网站制作多少钱一个,电子商务公司的网站制作费用计入什么科目?
html文件怎么打开证书错误_https协议的html打开提示不安全【指南】
Python图片处理进阶教程_Pillow滤镜与图像增强
安克发布新款氮化镓充电宝:体积缩小 30%,支持 200W 输出
php静态变量怎么调试_php静态变量作用域调试技巧【解答】
详解一款开源免费的.NET文档操作组件DocX(.NET组件介绍之一)
JavaScript如何实现音频处理_Web Audio API如何工作?
Laravel控制器是什么_Laravel MVC架构中Controller的作用与实践
Swift中swift中的switch 语句
Laravel如何使用Livewire构建动态组件?(入门代码)
下一篇: ,怎么将图片做成网站链接?
下一篇: ,怎么将图片做成网站链接?

