Bootstrap table使用方法总结


Posted in Javascript onMay 10, 2017

最近接触一个很棒的插件,Bootstrap table 没做过前端的表示对table的印象还只停留在html的table标签那一套,用过bootstrap table之后不得不说真是牛。

构造方式

1 、HTML

<div class="btn-group hidden-xs"id="exampleTableEventsToolbar" >
 //定义一系列工具栏...
 </div>
<table data-toggle="table"
 data-url="${ctxAdmin}/user/userData?orgId=${orgId}" //table数据来源,json格式
 data-pagination="true" //是否支持分页
 data-show-search="true" //是否显示搜索框功能
 data-show-columns="true" //显示columns功能按钮
 data-icon-size="outline" 
 data-mobile-responsive="true"
 data-height="500" 
 id="tablelist"
 data-side-pagination="server" //支持服务器端分页,默认是client>
  <thead>
  <tr>
  <th data-field="user_id">ID</th>
  <th data-field="username" 
    data-formatter="usernameFormatter" //columns option 参见官网解释
    data-events="usernameEvents">用户名</th>
  <th data-field="real_name">真实姓名</th>
  <th data-field="tel_num">座机</th>
  <th data-field="mobile">手机</th>
  <th data-field="user_type">用户类型</th>
  <th data-field="operation" 
    data-formatter="actionFormatter"
    data-events="actionEvents">操作</th>
  </tr>
  </thead>
</table>

2 、js构造:

(function() {
  $('#tablelist').bootstrapTable({
   url: "${ctxAdmin}/user/userData?orgId=${orgId}",
   search: true, //是否显示搜索框功能
   pagination: true, //是否分页
   showRefresh: true, //是否显示刷新功能 
   showToggle: true,
   showColumns: true,
   iconSize: 'outline',
   // toolbar: '#exampleTableEventsToolbar', 可以在table上方显示的一条工具栏,
   icons: {
    refresh: 'glyphicon-repeat',
    toggle: 'glyphicon-list-alt',
    columns: 'glyphicon-list'
   }
  });

结合官网上展示的Table options,Column options,Events,Methods可以完成很多功能。上面的data-formatter ,data-events就是Column options中的选项 。

data-formatter data-events

要实现如下效果,用上面两个option配合使用即可,一个定义格式,一个定义点击的操作。

Bootstrap table使用方法总结

直接上js代码

//value: 所在collumn的当前显示值,
  //row:整个行的数据 ,对象化,可通过.获取
   //表格-操作 - 格式化 
  function actionFormatter(value, row, index) {
    return '<a class="mod" >修改</a> ' + '<a class="delete">删除</a>';
  }
  //表格 - 操作 - 事件
  window.actionEvents = {
    'click .mod': function(e, value, row, index) {   
       //修改操作
      },
    'click .delete' : function(e, value, row, index) {
       //删除操作 
      }
    }

服务器分页/客户端分页的转换,table刷新

bootstrap默认是客户端分页 ,可通过html标签

data-side-pagination:"client"

或者js中的

sidePagination: 'server'

指定。注意,这两种后台传过来的json数据格式也不一样
client: 正常的json array格式 [{},{},{}]
server: {“total”:0,”rows”:[]} 其中total表示查询的所有数据条数,后面的rows是指当前页面展示的数据量。

有事需要根据情况改变分页方式,就要用到Methods中的
‘refreshOptions' //设置更新时候的options
‘refresh' //设置更新时的 url ,query(往后台传参数)

$("#tablelist").bootstrapTable('refreshOptions', {
    sidePagination: 'client' //改为客户端分页
        });
 $("#tablelist").bootstrapTable('refresh', {
     url: "${ctxAdmin}/user/getsearchuserinfo", //重设数据来源
     query: {username: $('#sea-username').val(),realname: $("#sea-realname").val(),mobile: $("#sea-mobile").val()}//传到后台的参数
          });

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
Jquery Validate 正则表达式实用验证代码大全
Aug 23 Javascript
深入理解JS中的变量及作用域、undefined与null
Mar 04 Javascript
JavaScript实现按Ctrl键打开新页面
Sep 04 Javascript
js实现网页随机切换背景图片的方法
Nov 01 Javascript
JS实现转动随机数抽奖特效代码
Apr 16 Javascript
jQuery中ajax的load()与post()方法实例详解
Jan 05 Javascript
js实现的二分查找算法实例
Jan 21 Javascript
JavaScript动态生成二维码图片
Apr 20 Javascript
AngularJS  ng-table插件设置排序
Sep 21 Javascript
JQuery实现动态操作表格
Jan 11 Javascript
解决vue数据不实时更新的问题(数据更改了,但数据不实时更新)
Oct 27 Javascript
原生js+canvas实现验证码
Nov 29 Javascript
将angular-ui的分页组件封装成指令的方法详解
May 10 #Javascript
vue-axios使用详解
May 10 #Javascript
详解axios在vue中的简单配置与使用
May 10 #Javascript
jQuery+PHP+Mysql实现抽奖程序
Apr 12 #jQuery
JavaScript实现form表单的多文件上传
Mar 27 #Javascript
Vue.js使用$.ajax和vue-resource实现OAuth的注册、登录、注销和API调用
May 10 #Javascript
利用PM2部署node.js项目的方法教程
May 10 #Javascript
You might like
又一个PHP实现的冒泡排序算法分享
2014/08/21 PHP
5款适合PHP使用的HTML编辑器推荐
2015/07/03 PHP
php判断str字符串是否是xml格式数据的方法示例
2017/07/26 PHP
浅析PHP 中move_uploaded_file 上传中文文件名失败
2019/04/17 PHP
CSS3画一个阴阳八卦图
2021/03/09 HTML / CSS
验证javascript中Object和Function的关系的三段简单代码
2010/06/27 Javascript
jquery制作多功能轮播图插件
2015/04/02 Javascript
jQuery实现带延迟效果的滑动菜单代码
2015/09/02 Javascript
angularJS 指令封装回到顶部示例详解
2017/01/22 Javascript
jQuery输入框密码的显示隐藏【代码分享】
2017/04/29 jQuery
es6系列教程_ Map详解以及常用api介绍
2017/09/25 Javascript
Vue请求JSON Server服务器数据的实现方法
2018/11/02 Javascript
webpack打包多页面的方法
2018/11/30 Javascript
从理论角度讨论JavaScript闭包
2019/04/03 Javascript
详解50行代码,Node爬虫练手项目
2019/04/22 Javascript
vue项目如何监听localStorage或sessionStorage的变化
2021/01/04 Vue.js
[58:58]2018DOTA2亚洲邀请赛 4.4 淘汰赛 TNC vs VG 第二场
2018/04/05 DOTA
python从入门到精通(DAY 1)
2015/12/20 Python
python 换位密码算法的实例详解
2017/07/19 Python
Django REST Framework序列化外键获取外键的值方法
2019/07/26 Python
python3 配置logging日志类的操作
2020/04/08 Python
如何使用Django Admin管理后台导入CSV
2020/11/06 Python
Skyscanner英国:苏格兰的全球三大领先航班搜索服务之一
2017/11/09 全球购物
GANT英国官方网上商店:甘特衬衫
2018/02/06 全球购物
加拿大服装和鞋类零售商:Mark’s
2021/01/04 全球购物
后勤主管工作职责
2013/12/07 职场文书
汽车制造与装配专业自荐信范文
2014/01/02 职场文书
十岁生日家长答谢词
2014/01/17 职场文书
微观物理专业自荐信
2014/01/26 职场文书
2014年预备党员学习两会心得体会
2014/03/17 职场文书
宿舍标语大全
2014/06/19 职场文书
纪委立案决定书
2015/06/24 职场文书
Python之基础函数案例详解
2021/08/30 Python
MySQL创建管理LIST分区
2022/04/13 MySQL
Go web入门Go pongo2模板引擎
2022/05/20 Golang
JavaScript实现音乐播放器
2022/08/14 Javascript