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 相关文章推荐
js 处理URL实用技巧
Nov 23 Javascript
jQuery 遍历函数详解
Jul 05 Javascript
获取阴历(农历)和当前日期的js代码
Feb 15 Javascript
JavaScript中的ParseInt(&quot;08&quot;)和“09”返回0的原因分析及解决办法
May 19 Javascript
jQuery ajaxSubmit 实现ajax提交表单局部刷新
Jul 04 Javascript
微信小程序 input输入框控件详解及实例(多种示例)
Dec 14 Javascript
vue+ElementUI实现订单页动态添加产品数据效果实例代码
Jul 13 Javascript
jQuery实现弹窗下底部页面禁止滑动效果
Dec 19 jQuery
jQuery实现轮播图及其原理详解
Apr 12 jQuery
layui 对弹窗 form表单赋值的实现方法
Sep 04 Javascript
Elasticsearch实现复合查询高亮结果功能
Sep 10 Javascript
vue实现水波涟漪效果的点击反馈指令
May 31 Vue.js
将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 和 MySQL 时区的一点总结
2008/03/26 PHP
PHP中获取文件扩展名的N种方法小结
2012/02/27 PHP
php中json_decode()和json_encode()的使用方法
2012/06/04 PHP
php flush无效,IIS7下php实时输出的方法
2016/08/25 PHP
基于jquery的返回顶部效果(兼容IE6)
2011/01/17 Javascript
autoIMG 基于jquery的图片自适应插件代码
2011/03/12 Javascript
基于JavaScript实现 获取鼠标点击位置坐标的方法
2013/04/12 Javascript
JavaScript阻止浏览器返回按钮的方法
2015/03/18 Javascript
js与jquery分别实现tab标签页功能的方法
2016/11/18 Javascript
javascript常用经典算法详解
2017/01/11 Javascript
vue组件编写之todolist组件实例详解
2018/01/22 Javascript
vue.js2.0 实现better-scroll的滚动效果实例详解
2018/08/13 Javascript
react 应用多入口配置及实践总结
2018/10/17 Javascript
Vue 之孙组件向爷组件通信的实现
2019/04/23 Javascript
JS事件流与事件处理程序实例分析
2019/08/16 Javascript
ionic2.0双击返回键退出应用
2019/09/17 Javascript
nodeJS与MySQL实现分页数据以及倒序数据
2020/06/05 NodeJs
python函数返回多个值的示例方法
2013/12/04 Python
Python KMeans聚类问题分析
2018/02/23 Python
python如何为创建大量实例节省内存
2018/03/20 Python
Windows下Anaconda2安装NLTK教程
2018/09/19 Python
Python 文本文件内容批量抽取实例
2018/12/10 Python
python opencv 图像拼接的实现方法
2019/06/27 Python
对Python中小整数对象池和大整数对象池的使用详解
2019/07/09 Python
django使用haystack调用Elasticsearch实现索引搜索
2019/07/24 Python
Django项目之Elasticsearch搜索引擎的实例
2019/08/21 Python
python画环形图的方法
2020/03/25 Python
使用Html5多媒体实现微信语音功能
2019/07/26 HTML / CSS
环保倡议书50字
2014/05/15 职场文书
大学英语专业求职信
2014/06/21 职场文书
关于爱国的标语
2014/06/24 职场文书
党性教育心得体会
2014/09/03 职场文书
结婚老公保证书
2015/02/26 职场文书
体育教师教学随笔
2015/08/15 职场文书
用python自动生成日历
2021/04/24 Python
小程序实现筛子抽奖
2021/05/26 Javascript