全网整合营销服务商

电脑端+手机端+微信端=数据同步管理

免费咨询热线:400-708-3566

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

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表格行拖拽效果实现代码  # 来实现  # 分页  # 相对应  # 条数  # 的是  # 这是  # 字段名  # 加载  # 发布时间  # 是在  # 是因为  # 好了  # 都在  # 也在  # 这个问题  # 我一直  # 这部  # 我用  # 才可以  # 很重要 


相关文章: 实现点击下箭头变上箭头来回切换的两种方法【推荐】  油猴 教程,油猴搜脚本为什么会网页无法显示?  测试制作网站有哪些,测试性取向的权威测试或者网站?  公司网站制作费用多少,为公司建立一个网站需要哪些费用?  如何基于PHP生成高效IDC网络公司建站源码?  详解免费开源的DotNet二维码操作组件ThoughtWorks.QRCode(.NET组件介绍之四)  广州网站设计制作一条龙,广州巨网网络科技有限公司是干什么的?  建站之星安装需要哪些步骤及注意事项?  高配服务器限时抢购:企业级配置与回收服务一站式优惠方案  免费网站制作模板下载,除了易企秀之外还有什么H5平台可以制作H5长页面,最好是免费的?  如何选择高性价比服务器搭建个人网站?  西安大型网站制作公司,西安招聘网站最好的是哪个?  b2c电商网站制作流程,b2c水平综合的电商平台?  建站主机是否等同于虚拟主机?  建站之星云端配置指南:模板选择与SEO优化一键生成  武汉网站制作费用多少,在武汉武昌,建面100平方左右的房子,想装暖气片,费用大概是多少啊?  唐山网站制作公司有哪些,唐山找工作哪个网站最靠谱?  宝塔建站助手安装配置与建站模板使用全流程解析  如何在VPS电脑上快速搭建网站?  微信推文制作网站有哪些,怎么做微信推文,急?  网站插件制作软件免费下载,网页视频怎么下到本地插件?  如何配置FTP站点权限与安全设置?  建站之星收费标准详解:套餐费用及年费价格表一览  深圳网站制作培训,深圳哪些招聘网站比较好?  企业微网站怎么做,公司网站和公众号有什么区别?  北京网站制作公司哪家好一点,北京租房网站有哪些?  哪家制作企业网站好,开办像阿里巴巴那样的网络公司和网站要怎么做?  建站之星×万网:智能建站系统+自助建站平台一键生成  如何制作算命网站,怎么注册算命网站?  python的本地网站制作,如何创建本地站点?  建站之星在线版空间:自助建站+智能模板一键生成方案  如何在新浪SAE免费搭建个人博客?  枣阳网站制作,阳新火车站打的到仙岛湖多少钱?  如何在宝塔面板中修改默认建站目录?  高端智能建站公司优选:品牌定制与SEO优化一站式服务  广州网站建站公司选择指南:建站流程与SEO优化关键词解析  湖南网站制作公司,湖南上善若水科技有限公司做什么的?  高防服务器租用指南:配置选择与快速部署攻略  如何选择服务器才能高效搭建专属网站?  如何用腾讯建站主机快速创建免费网站?  XML的“混合内容”是什么 怎么用DTD或XSD定义  Swift中循环语句中的转移语句 break 和 continue  实例解析Array和String方法  已有域名和空间如何快速搭建网站?  网站专业制作公司有哪些,做一个公司网站要多少钱?  义乌企业网站制作公司,请问义乌比较好的批发小商品的网站是什么?  小说建站VPS选用指南:性能对比、配置优化与建站方案解析  头像制作网站在线制作软件,dw网页背景图像怎么设置?  如何用AWS免费套餐快速搭建高效网站?  如何快速搭建二级域名独立网站? 

您的项目需求

*请认真填写需求信息,我们会在24小时内与您取得联系。