bootstrapTable 表头固定(可全局控制) 列与列无缝对接

文章讲述了在使用BootstrapTable时遇到的表头随滚动跑上去的问题,作者分享了解决方案,即自定义CSS以保持表头固定在顶部。

项目场景:

在项目上遇到bootstrapTable限制高度后,滚动条滚动后,表头跑上面去了,为解决这个问题,自己修改了一些bug;前端代码如下,主要是修改了bootstrap-table.css


实现

 <div style="width:52%; float:left;height:340px;" id="FreezingHeadDiv_Order">
        <table id="tb_order"></table>
    </div>
`
$('#tb_Model').bootstrapTable({
                toolbar: '#toolbar',
                columns: columns,
                pagination: true,
                showRefresh: true,
                striped: true,
                url: ‘',
                sidePagination: 'server',
                queryParams: function (params) {
                    return {
                        limit: params.limit,
                        offset: params.offset
                    };
                },
                shiftSelect: true,
                clickToSelect: true,
                height: 300,
                singleSelect: true,
                onPageChange: function (number, size) {
                    m_pagerow = (number - 1) * size;
                },
                rowStyle: function (row, index) {
                    var classes = [];
                    if (row.BOM_STATUS == "0") {
                        classes = ['warning'];//warning active info danger success
                    }
                    else {
                        classes = ['success'];
                    }
                    return { classes: classes[0] }
                }
            });

bootstrap-table.css:

.table-container {
    width: 100%;
    overflow: auto;
}

/*.table-container tbody tr > td:first-child {
    position: sticky;
    left: 0;
    z-index: 1;
}*/

.table-container thead tr > th {
    position: sticky;
    top: 0;
    z-index: 6;
    background-color: white;
}

.table-container tbody tr > th:first-child {
    z-index: 6;
}

代码链接:

固定表头

在使用 Bootstrap Table 时,固定表头可以通过其扩展插件 `bootstrap-table-fixed-columns` 来实现。该插件专门用于支持固定功能,并且 Bootstrap Table 的原生固定表头功能兼容[^4]。 ### 固定表头的实现方法 1. **引入必要的资源文件** 在使用固定功能之前,需要引入以下两个资源文件: - `bootstrap-table-fixed-columns.js` - `bootstrap-table-fixed-columns.css` 这些文件可以从 [GitHub 项目页面](https://github.com/wenzhixin/bootstrap-table-fixed-columns) 下载[^4]。 ```html <!-- 引入 CSS 文件 --> <link rel="stylesheet" href="path/to/bootstrap-table-fixed-columns.css"> <!-- 引入 JS 文件 --> <script src="path/to/bootstrap-table-fixed-columns.js"></script> ``` 2. **HTML 结构** 确保你的表格具有一个明确的 `id`,以便通过 JavaScript 初始化插件。 ```html <table id="table" class="table table-bordered table-striped"> <thead> <tr> <th data-field="id">ID</th> <th data-field="name">姓名</th> <th data-field="age">年龄</th> <th data-field="address">地址</th> </tr> </thead> <tbody> <tr> <td>1</td> <td>张三</td> <td>25</td> <td>北京市</td> </tr> <tr> <td>2</td> <td>李四</td> <td>30</td> <td>上海市</td> </tr> </tbody> </table> ``` 3. **初始化 Bootstrap Table 并启用固定** 使用如下 JavaScript 代码来初始化表格并启用固定功能: ```javascript $(function () { $('#table').bootstrapTable('destroy').bootstrapTable({ fixedColumns: true, fixedNumber: 1 // 表示固定第一 }); }); ``` - `fixedColumns: true` 表示启用固定功能。 - `fixedNumber: 1` 表示固定前 1 ,可以根据需要调整数值[^1]。 4. **注意事项** - 固定插件对表格的布局有一定要求,建议为表格设置固定的宽度或使用响应式布局。 - 如果表格数据量较大,建议结合分页功能,以提升性能。 - 插件可能某些 Bootstrap Table 的其他扩展功能存在兼容性问题,建议测试不同功能组合的表现。 ### 示例效果 通过上述配置,表格的表头会随着页面滚动保持固定在顶部,而指定的(例如第一)也会在水平滚动时保持固定在左侧,从而提升用户体验。 ---
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

unkul

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值