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 相关文章推荐
javascript setAttribute, getAttribute 在不同浏览器上的不同表现
Aug 05 Javascript
5个最佳的Javascript日期处理类库分享
Apr 15 Javascript
Jquery时间验证和转换工具小例子
Jul 01 Javascript
JavaScript前端图片加载管理器imagepool使用详解
Dec 29 Javascript
JavaScript数组常用方法
Mar 02 Javascript
AngularJS基础学习笔记之控制器
May 10 Javascript
bootstrap css样式之表单
Jan 19 Javascript
canvas压缩图片转换成base64格式输出文件流
Mar 09 Javascript
Vue实现移动端左右滑动效果的方法
Nov 27 Javascript
vue-cli脚手架打包静态资源请求出错的原因与解决
Jun 06 Javascript
详解Vue2.5+迁移至Typescript指南
Aug 01 Javascript
vuex存值与取值的实例
Nov 06 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
详解:――如何将图片储存在数据库里
2006/12/05 PHP
全局记录程序片段的运行时间 正确找到程序逻辑耗时多的断点
2011/01/06 PHP
php中Smarty模板初体验
2011/08/08 PHP
PHP之sprintf函数用法详解
2014/11/12 PHP
使用jQuery实现input数值增量和减量的方法
2015/01/24 Javascript
JavaScript原生对象常用方法总结(推荐)
2016/05/13 Javascript
深入学习js瀑布流布局
2016/10/14 Javascript
微信小程序 vidao实现视频播放和弹幕的功能
2016/11/02 Javascript
jQuery设置图片等比例缩小的方法
2017/04/29 jQuery
对于Javascript 执行上下文的全面了解
2017/09/05 Javascript
js中apply和Math.max()函数的问题及区别介绍
2018/03/27 Javascript
微信小程序自定义音乐进度条的实例代码
2018/08/28 Javascript
nodeJs的安装与npm全局环境变量的配置详解
2020/01/06 NodeJs
详解Vue template 如何支持多个根结点
2020/02/10 Javascript
vue实现几秒后跳转新页面代码
2020/09/09 Javascript
vue.js实现点击图标放大离开时缩小的代码
2021/01/27 Vue.js
python连接MySQL、MongoDB、Redis、memcache等数据库的方法
2013/11/15 Python
使用python实现递归版汉诺塔示例(汉诺塔递归算法)
2014/04/08 Python
python网络编程学习笔记(10):webpy框架
2014/06/09 Python
详解在Python程序中自定义异常的方法
2015/10/16 Python
Python中线程的MQ消息队列实现以及消息队列的优点解析
2016/06/29 Python
Python机器学习之K-Means聚类实现详解
2018/02/22 Python
Python3实现从排序数组中删除重复项算法分析
2019/04/03 Python
Python3.5内置模块之time与datetime模块用法实例分析
2019/04/27 Python
django-csrf使用和禁用方式
2020/03/13 Python
Python获取浏览器窗口句柄过程解析
2020/07/25 Python
python批量检查两个对应的txt文件的行数是否一致的实例代码
2020/10/31 Python
python pygame 愤怒的小鸟游戏示例代码
2021/02/25 Python
印尼最大的婴儿用品购物网站:Orami
2017/09/28 全球购物
纽约州一群才华横溢的金匠制作而成:Hearth Jewelry
2019/03/22 全球购物
捷克家电和家具购物网站:OKAY.cz
2020/07/23 全球购物
人力资源部副职的竞聘演讲稿
2014/01/07 职场文书
无故旷工检讨书
2014/01/26 职场文书
军训 自我鉴定
2014/02/03 职场文书
教师先进事迹材料
2014/12/16 职场文书
党员检讨书范文
2014/12/27 职场文书