bootstrap-table实现表头固定以及列固定的方法示例

要实现bootstrap-table表头固定和列固定,主要需要以下几个步骤:

一、引入jQuery库和bootstrap-table插件库。

在文档的head中引入jQuery库和bootstrap-table插件库,如下:

<head>
   <script src="https://cdn.bootcss.com/jquery/3.3.1/jquery.min.js"></script>
   <script src="https://cdn.bootcss.com/bootstrap-table/1.15.4/bootstrap-table.min.js"></script>
   <link rel="stylesheet" href="https://cdn.bootcss.com/bootstrap-table/1.15.4/bootstrap-table.min.css">
</head>

二、实现表头固定

1、按照官网文档中的说明给bootstrap-table添加fixedHeader、fixedColumns属性,代码如下:

<table id="table" data-fixed-header="true"
       data-fixed-columns="true">
    <thead>
    <tr>
        <th data-halign="center" data-align="center" data-field="id">ID</th>
        <th data-halign="center" data-align="center" data-field="name">名称</th>
        <th data-halign="center" data-align="center" data-field="price">价格</th>
        <th data-halign="center" data-align="center" data-field="count">数量</th>
        <th data-halign="center" data-align="center" data-field="operate">操作</th>
    </tr>
    </thead>
    <tbody>
    <tr>
        <td>1</td>
        <td>苹果</td>
        <td>5.5</td>
        <td>100</td>
        <td><a href="#">购买</a></td>
    </tr>
    ...
    </tbody>
</table>

其中“data-fixed-header”属性为开启表头固定,“data-fixed-columns”属性为开启列固定。

2、在JS中启用表头和列固定的方法,如下:

$(function () {
    $('#table').bootstrapTable({
        fixedHeader: true,//开启表头固定
        fixedColumns: true,//开启列固定
    });
});

三、实现列固定

1、按照官网文档中的说明给bootstrap-table添加fixedColumns属性,并指定需要固定的列,代码如下:

<table id="table">
    <thead>
    <tr>
        <th data-halign="center" data-align="center" data-field="id" data-fixed="left">ID</th>
        <th data-halign="center" data-align="center" data-field="name">名称</th>
        <th data-halign="center" data-align="center" data-field="price" data-fixed="right">价格</th>
        <th data-halign="center" data-align="center" data-field="count">数量</th>
        <th data-halign="center" data-align="center" data-field="operate">操作</th>
    </tr>
    </thead>
    <tbody>
    <tr>
        <td>1</td>
        <td>苹果</td>
        <td>5.5</td>
        <td>100</td>
        <td><a href="#">购买</a></td>
    </tr>
...</tbody>
</table>

其中“data-fixed”属性指定需要固定的列,值为“left”或“right”。

2、在JS中启用列固定方法,如下:

$(function () {
    $('#table').bootstrapTable({
        fixedColumns: true,//开启列固定
        columns: [{
            field: 'id',
            title: 'ID',
            align: 'center',
            valign: 'middle',
            width: '80',//如果宽度过大则会被省略号代替
            sortable: true,
            fixed: true,//列固定
            formatter: function (value, row, index) {
                return index + 1;
            }
        },
        ...
        ],
    });
});

其中“fixed”属性用于列固定。

示例1:

<!DOCTYPE html>
<html>
<head>
    <title>Bootstrap Table Column Fixed Demo</title>
    <meta charset="UTF-8">
    <script src="https://cdn.bootcss.com/jquery/3.3.1/jquery.min.js"></script>
    <script src="https://cdn.bootcss.com/bootstrap-table/1.15.4/bootstrap-table.min.js"></script>
    <link rel="stylesheet" href="https://cdn.bootcss.com/bootstrap-table/1.15.4/bootstrap-table.min.css">
</head>
<body>
<div class="container-fluid">
    <div class="row">
        <div class="col-xs-12" style="height: 400px">
            <table id="table">
                <thead>
                <tr>
                    <th data-field="id" data-fixed="left">ID</th>
                    <th data-field="name">名称</th>
                    <th data-field="price" data-fixed="right">价格</th>
                    <th data-field="count">数量</th>
                    <th data-field="operate">操作</th>
                </tr>
                </thead>
                <tbody>
                <tr>
                    <td>1</td>
                    <td>苹果</td>
                    <td>5.5</td>
                    <td>100</td>
                    <td><a href="#">购买</a></td>
                </tr>
                <tr>
                    <td>2</td>
                    <td>香蕉</td>
                    <td>3.5</td>
                    <td>200</td>
                    <td><a href="#">购买</a></td>
                </tr>
                <tr>
                    <td>3</td>
                    <td>西瓜</td>
                    <td>10</td>
                    <td>50</td>
                    <td><a href="#">购买</a></td>
                </tr>
                <tr>
                    <td>4</td>
                    <td>葡萄</td>
                    <td>2.5</td>
                    <td>500</td>
                    <td><a href="#">购买</a></td>
                </tr>
                <tr>
                    <td>5</td>
                    <td>草莓</td>
                    <td>8</td>
                    <td>1000</td>
                    <td><a href="#">购买</a></td>
                </tr>
                <tr>
                    <td>6</td>
                    <td>橘子</td>
                    <td>4</td>
                    <td>300</td>
                    <td><a href="#">购买</a></td>
                </tr>
                <tr>
                    <td>7</td>
                    <td>樱桃</td>
                    <td>15</td>
                    <td>20</td>
                    <td><a href="#">购买</a></td>
                </tr>
                </tbody>
            </table>
        </div>
    </div>
</div>
<script type="text/javascript">
    $(function () {
        $('#table').bootstrapTable({
            fixedColumns: true,//开启列固定
            columns: [{
                field: 'id',
                title: 'ID',
                align: 'center',
                valign: 'middle',
                width: '80',//如果宽度过大则会被省略号代替
                sortable: true,
                fixed: true,//列固定
                formatter: function (value, row, index) {
                    return index + 1;
                }
            },
                {
                    field: 'name',
                    title: '名称',
                    align: 'center',
                    valign: 'middle',
                    width: '80',
                },
                {
                    field: 'price',
                    title: '价格',
                    align: 'center',
                    valign: 'middle',
                    width: '80',
                },
                {
                    field: 'count',
                    title: '数量',
                    align: 'center',
                    valign: 'middle',
                    width: '80',
                },
                {
                    field: 'operate',
                    title: '操作',
                    align: 'center',
                    valign: 'middle',
                    width: '80',
                    formatter: function (value, row, index) {
                        return '<a href="#">购买</a>';
                    }
                }
            ],
        });
    });
</script>
</body>
</html>

示例2:

<!DOCTYPE html>
<html>
<head>
    <title>Bootstrap Table Header and Column Fixed Demo</title>
    <meta charset="UTF-8">
    <script src="https://cdn.bootcss.com/jquery/3.3.1/jquery.min.js"></script>
    <script src="https://cdn.bootcss.com/bootstrap-table/1.15.4/bootstrap-table.min.js"></script>
    <link rel="stylesheet" href="https://cdn.bootcss.com/bootstrap-table/1.15.4/bootstrap-table.min.css">
</head>
<body>
<div class="container-fluid">
    <div class="row">
        <div class="col-xs-12" style="height: 400px">
            <table id="table" data-fixed-header="true"
                   data-fixed-columns="true">
                <thead>
                <tr>
                    <th data-halign="center" data-align="center" data-field="id">ID</th>
                    <th data-halign="center" data-align="center" data-field="name">名称</th>
                    <th data-halign="center" data-align="center" data-field="price">价格</th>
                    <th data-halign="center" data-align="center" data-field="count">数量</th>
                    <th data-halign="center" data-align="center" data-field="operate">操作</th>
                </tr>
                </thead>
                <tbody>
                <tr>
                    <td>1</td>
                    <td>苹果</td>
                    <td>5.5</td>
                    <td>100</td>
                    <td><a href="#">购买</a></td>
                </tr>
                <tr>
                    <td>2</td>
                    <td>香蕉</td>
                    <td>3.5</td>
                    <td>200</td>
                    <td><a href="#">购买</a></td>
                </tr>
                <tr>
                    <td>3</td>
                    <td>西瓜</td>
                    <td>10</td>
                    <td>50</td>
                    <td><a href="#">购买</a></td>
                </tr>
                <tr>
                    <td>4</td>
                    <td>葡萄</td>
                    <td>2.5</td>
                    <td>500</td>
                    <td><a href="#">购买</a></td>
                </tr>
                <tr>
                    <td>5</td>
                    <td>草莓</td>
                    <td>8</td>
                    <td>1000</td>
                    <td><a href="#">购买</a></td>
                </tr>
                <tr>
                    <td>6</td>
                    <td>橘子</td>
                    <td>4</td>
                    <td>300</td>
                    <td><a href="#">购买</a></td>
                </tr>
                <tr>
                    <td>7</td>
                    <td>樱桃</td>
                    <td>15</td>
                    <td>20</td>
                    <td><a href="#">购买</a></td>
                </tr>
                </tbody>
            </table>
        </div>
    </div>
</div>
<script type="text/javascript">
    $(function () {
        $('#table').bootstrapTable({
            fixedHeader: true,//开启表头固定
            fixedColumns: true,//开启列固定
        });
    });
</script>
</body>
</html>

以上是关于bootstrap-table实现表头固定以及列固定的方法和示例,希望能对你有所帮助。

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:bootstrap-table实现表头固定以及列固定的方法示例 - Python技术站

(0)
上一篇 2023年6月9日
下一篇 2023年6月9日

相关文章

  • CSS行为expression轻松实现IE6无抖动固定定位

    首先需要解释一下什么是“抖动”,在IE6中固定定位会产生抖动现象,即元素不停地抖动,这是因为固定定位对渲染引擎的计算依赖于元素的宽高以及位置等,当元素的宽高和位置变化时,渲染引擎需要重新计算,从而导致不停抖动。 而解决这个问题的一个方案是使用CSS行为expression,通过JS代码直接在CSS中计算元素的位置、宽高等属性,从而避免抖动现象的发生。 下面是…

    css 2023年6月9日
    00
  • jQuery实现拖动调整表格单元格大小的代码实例

    下面是详细讲解“jQuery实现拖动调整表格单元格大小的代码实例”的完整攻略: 1. 概述 对于表格的每一个单元格,我们都可以通过鼠标拖动来调整其大小。实现这个功能需要一些CSS样式的设置,以及一些JavaScript的代码。本攻略将分享一个基于jQuery的实现拖动调整表格单元格大小的代码实例,希望能够帮助大家更加方便地实现这个功能。 2. 步骤 2.1 …

    css 2023年6月10日
    00
  • 详解css3中dispaly的Grid布局与Flex布局

    下面是“详解CSS3中display的Grid布局与Flex布局”的完整攻略。 Grid布局 概述: Grid布局是CSS3中一种全新的布局方式,可以非常方便地实现基于网格的布局,使得排版更加灵活,支持更多复杂的排版方式,使用Grid布局可以大大减少布局代码的量,同时也能够提高排版的效率,完善不同尺寸的屏幕响应式设计。 基本语法: .container { …

    css 2023年6月10日
    00
  • Vue实现背景更换颜色操作

    下面是Vue实现背景更换颜色的完整攻略: 1. 确定需求 在实现之前,首先需要明确需求,即用户可以通过某种方式更改页面背景颜色,所以我们需要提供一个可操作的控件来实现此功能。 2. 创建Vue组件 为了实现页面背景颜色更换功能,我们可以创建一个Vue组件。下面是一个简单的Vue组件示例: <template> <div> <h1…

    css 2023年6月9日
    00
  • 关于CSS引入方式的详细见解小结

    关于CSS引入方式的详细见解小结,我可以为你做一个完整的攻略,具体步骤如下。 1. 分类 CSS引入方式可分为三种: 内联样式 内嵌样式 外部样式表 2. 详解 2.1 内联样式 内联样式是指将CSS代码直接写在HTML标签的style属性中,在标签内使用style属性即可。 示例: <p style="color:red;"&gt…

    css 2023年6月9日
    00
  • vue 实现 ios 原生picker 效果及实现思路解析

    下面我将为你详细讲解“vue 实现 ios 原生picker 效果及实现思路解析”的完整攻略。 标题 如何实现ios原生picker效果 在Vue中,实现ios原生picker效果主要是通过借助第三方插件picker-component来完成。picker-component是一个基于Vue的picker组件,实现了iphone风格的列表场景。在使用时,我们…

    css 2023年6月10日
    00
  • IE矩阵Matrix滤镜旋转与缩放及如何结合transform

    IE矩阵(Matrix)是IE浏览器独有的CSS属性,可以实现元素的旋转、缩放、扭曲等变形效果。结合transform属性,可以进一步扩展变形效果。下面是详细的攻略: 如何使用IE矩阵(Matrix)实现旋转与缩放 语法 filter: progid:DXImageTransform.Microsoft.Matrix(sizingMethod=’auto e…

    css 2023年6月11日
    00
  • CSS3点击按钮实现背景渐变动画效果

    CSS3点击按钮实现背景渐变动画效果的步骤如下: 1. 编写HTML代码 首先,我们需要在HTML代码中添加一个按钮元素,示例如下: <button class="btn">点击我</button> 2. 定义CSS样式 然后,在CSS样式文件中,我们需要定义按钮的基本样式,以及按钮被点击时的动画效果。具体步骤如下…

    css 2023年6月9日
    00
合作推广
合作推广
分享本页
返回顶部