欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

bootstrap table - 表格插件

程序员文章站 2022-04-29 10:57:39
...
最近呢,公司要用bootstrap table表格插件做表格,自己之前没接触过,于是仿照别人的copy,但总是copy肯定是不行的呀,于是琢磨了一下。现在就把自己使用bootstrap table使用方法,和大家分享一下。

1、首先百度bootstrap table

百度后,可以看到中文官方地址、英文官方地址等等!
bootstrap table - 表格插件

点击第一条信息,下面这一段是进入中文网的介绍!

与一些最广泛使用的CSS框架集成的扩展表。(支持Bootstrap,语义UI,Bulma,Material
Design,Foundation)

Bootstrap Table旨在减少开发时间,并且不需要开发人员的特定知识。它既轻量级又功能丰富。

bootstrap table - 表格插件

2、对bootstrap table进行了字面的理解,然后进行入门训练。

肯定是点击入门了,上方图片(入门

2.1、引入CSS、JS文件,添加HTML5 doctype

2.1.1、引入CSS文件时要放到< head></ head>之间

  • bootstrap-table.min.css
<link rel="stylesheet" href="https://unpkg.com/aaa@qq.com/dist/bootstrap-table.min.css">

2.1.2、将以下< script>放在页面末尾附近,在结束</ body>标记之前,以启用它们。首先是jQuery,然后是Bootstrap.js,然后是我们的JavaScript插件。

  • bootstrap-table.min.js
  • bootstrap-table-zh-CN.min.js (中文版的)
<script src="https://unpkg.com/aaa@qq.com/dist/bootstrap-table.min.js"></script>

2.1.3、HTML5 doctype
Bootstrap Table需要使用HTML5 doctype。没有它,你会看到一些时髦的不完整造型。

<!doctype html>
<html lang="en">
  ...
</html>

3、用法(前两种比较少,一般是JS调用带有id的表)

3.1、通过直接数据添加
<table data-toggle="table">
  <thead>
    <tr>
      <th>Item ID</th>
      <th>Item Name</th>
      <th>Item Price</th>
    </tr>
  </thead>
  <tbody>
    <tr>
      <td>1</td>
      <td>Item 1</td>
      <td>$1</td>
    </tr>
    <tr>
      <td>2</td>
      <td>Item 2</td>
      <td>$2</td>
    </tr>
  </tbody>
</table>
3.2、通过data-url="data1.json"在普通表上设置来使用远程URL数据

首先,设置了data-url添加数据url,用data-field接收数据,即可接收对应字段信息!

<table
  data-toggle="table"
  data-url="data1.json">
  <thead>
    <tr>
      <th data-field="id">Item ID</th>
      <th data-field="name">Item Name</th>
      <th data-field="price">Item Price</th>
    </tr>
  </thead>
</table>
3.3 通过JavaScript调用带有id表的bootstrap Table。
<table id="table"></table>

3.3.1、data数据

$('#table').bootstrapTable({
  columns: [{
    field: 'id',
    title: 'Item ID'
  }, {
    field: 'name',
    title: 'Item Name'
  }, {
    field: 'price',
    title: 'Item Price'
  }],
  data: [{
    id: 1,
    name: 'Item 1',
    price: '$1'
  }, {
    id: 2,
    name: 'Item 2',
    price: '$2'
  }]
})

3.1.2、url数据

$('#table').bootstrapTable({
  url: 'data1.json',
  columns: [{
    field: 'id',
    title: 'Item ID'
  }, {
    field: 'name',
    title: 'Item Name'
  }, {
    field: 'price',
    title: 'Item Price'
  }]
})
$('#table').bootstrapTable({
        'data1.json'
        method: 'get',
        uniqueId: "id",
//      queryParams: {code: 'E1300000870000003003'},  //服务器上传参数
        cache: false, //是否使用缓存,默认为true
        striped: true, //是否显示行间隔色
        pagination: true,//显示分页
        sortable: true, //排序
        //singleSelect: true,
        //clickToSelect: true,
        sidePagination: "client", // server服务器分页,client前端分页
        pageNumber: 1, // 初始化加载第一页
        pageSize: 5, // 单页记录数
        //下面onClickRow为点击该行的时候获取到该行的行号; 在外边设置index,当点击某一行的时候,再改写该值。
        // onClickRow: function (row, $e) {
        //     let index = $e.data('index');
        // },
        // pageList: [10, 25],  // 可选单页记录数
        // showRefresh : true,  // 刷新按钮
        // showToggle:true,   //是否显示详细视图和列表视图的切换按钮
        // cardView: true,   //是否显示详细视图
        columns: [{
            field: 'id',
            title: '序号',
            width: 100,
            align: 'center',
            sortable: true, // 是否可以调整顺序
            formatter: function (value, row, index) {
                const pageSize = $("#modOfferTable").bootstrapTable('getOptions').pageSize;//通过表的#id 可以得到每页多少条
                const pageNumber = $("#modOfferTable").bootstrapTable('getOptions').pageNumber;//通过表的#id 可以得到当前第几页
                return pageSize * (pageNumber - 1) + index + 1;//返回每条的序号: 每页条数 * (当前页 - 1 )+ 序号
            }
        }, {
            field: 'name',
            title: 'Item Name'
        }, {
            field: 'price',
            title: 'Item Price'
        }]
    });
};

注:

 <!--  bootstrap-table.min.css -->
<link rel="stylesheet" href="https://unpkg.com/aaa@qq.com/dist/bootstrap-table.min.css">

<!--   bootstrap-table.min.js -->
<script src="https://unpkg.com/aaa@qq.com/dist/bootstrap-table.min.js"></script>

<!--   bootstrap-table-zh-CN.min.js    (中文版的) -->
<script src="https://unpkg.com/aaa@qq.com/dist/locale/bootstrap-table-zh-CN.min.js"></script>