BootStrap Table对前台页面表格的支持实例讲解


Posted in Javascript onDecember 22, 2016

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、展示效果

BootStrap Table对前台页面表格的支持实例讲解

提示:搜索功能需要自己做,传入的参数也是通过上面的传入

6.问题:因为考虑到接送的传输问题,在bootstrap-table里面存在post请求的问题,这也是我一直没有解决的问题!

1)因为bootstrap-table对post请求进行了封装,在使用post请求的时候取不到数据(我也在研究这个问题,希望高人指点)

2)后台数据封装的字段名问题,必须要一样才可以,不用别名返回的是字段名1234。。这个是因为hibernate造成的,其他框架略过

Javascript 相关文章推荐
jQuery学习笔记 操作jQuery对象 文档处理
Sep 19 Javascript
JavaScript 产生不重复的随机数三种实现思路
Dec 13 Javascript
Jquery下EasyUI组件中的DataGrid结果集清空方法
Jan 06 Javascript
javascript中拼接HTML字符串的最快、最好的方法
Jun 07 Javascript
jquery动态添加删除一行数据示例
Jun 12 Javascript
jQuery中fadeOut()方法用法实例
Dec 24 Javascript
jQuery实现移动端手机商城购物车功能
Sep 24 Javascript
js中document.write和document.writeln的区别
Mar 11 Javascript
TypeScript类型声明书写详解
Aug 28 Javascript
浅谈vuex为什么不建议在action中修改state
Feb 02 Javascript
Vue 修改网站图标的方法
Dec 31 Vue.js
element el-table表格的二次封装实现(附表格高度自适应)
Jan 19 Javascript
JS实现的简单轮播图运动效果示例
Dec 22 #Javascript
基于BootStrap与jQuery.validate实现表单提交校验功能
Dec 22 #Javascript
详解js的事件代理(委托)
Dec 22 #Javascript
HTML页面定时跳转方法解析(2种任选)
Dec 22 #Javascript
vue双向绑定的简单实现
Dec 22 #Javascript
jQuery使用Layer弹出层插件闪退问题
Dec 22 #Javascript
深入理解jquery中extend的实现
Dec 22 #Javascript
You might like
检查url链接是否已经有参数的php代码 添加 ? 或 &amp;
2010/02/09 PHP
关于二级目录拖拽排序的实现(源码示例下载)
2013/04/26 PHP
php根据日期或时间戳获取星座信息和生肖等信息
2015/10/20 PHP
Thinkphp单字母函数使用指南
2016/05/08 PHP
php 伪造HTTP_REFERER页面URL来源的三种方法
2016/09/22 PHP
Linux下 php7安装redis的方法
2018/11/01 PHP
PHP根据key删除数组中指定的元素
2019/02/28 PHP
关于 文本框默认值 的操作js代码
2012/01/12 Javascript
JQUERY对单选框(radio)操作的小例子
2013/04/25 Javascript
js实现prototype扩展的方法(字符串,日期,数组扩展)
2016/01/14 Javascript
JavaScript计算器网页版实现代码分享
2016/07/15 Javascript
微信小程序 WebSocket详解及应用
2017/01/21 Javascript
最常用的jQuery表单验证(简单)
2017/05/23 jQuery
NodeJS实现视频转码的示例代码
2017/11/18 NodeJs
Vue + better-scroll 实现移动端字母索引导航功能
2018/05/07 Javascript
学习LayUI时自研的表单参数校验框架案例分析
2019/07/29 Javascript
Vue 实现从小到大的横向滑动效果详解
2019/10/16 Javascript
jQuery实现弹幕特效
2019/11/29 jQuery
小程序登录之支付宝授权的实现示例
2019/12/13 Javascript
Python学习_几种存取xls/xlsx文件的方法总结
2018/05/03 Python
python 对类的成员函数开启线程的方法
2019/01/22 Python
python使用for循环计算0-100的整数的和方法
2019/02/01 Python
Python可迭代对象操作示例
2019/05/07 Python
PyQt5+Caffe+Opencv搭建人脸识别登录界面
2019/08/28 Python
Python读取JSON数据操作实例解析
2020/05/18 Python
python 基于UDP协议套接字通信的实现
2021/01/22 Python
python中Array和DataFrame相互转换的实例讲解
2021/02/03 Python
七年级数学教学反思
2014/01/22 职场文书
运动会广播稿80字
2014/01/23 职场文书
乡镇群众路线专项整治方案
2014/11/03 职场文书
会计工作能力自我评价
2015/03/05 职场文书
给朋友的道歉短信
2015/05/12 职场文书
2015企业年终工作总结范文
2015/05/27 职场文书
小爸爸观后感
2015/06/15 职场文书
《哪吒之魔童降世》观后感:世上哪有随随便便的成功
2019/11/08 职场文书
SQL Server使用导出向导功能
2022/04/08 SQL Server