Bootstrap Table从零开始
发布时间 - 2026-01-11 02:07:21 点击率:次本文博主将从零开始,一步一步的告诉大家如何在前端用bootstrap Table插件展示一个表格

首先,要下载bootstrap Table插件所必须的js,地址:https://github.com/wenzhixin/bootstrap-table
官方文档地址:http://bootstrap-table.wenzhixin.net.cn/zh-cn/documentation/
本文项目地址:bootstraptable
本文需要注意点地方博主已用红笔圈起来
先展示效果图
接下来就开始使用bootstrap Table插件制作表格
将上述地址下载的插件js放到项目中,分别为js,css,fonts
此处有一个细节:locale文件夹的名字不能修改,而且里边的所有语言js,必须全部粘过来
本文以MVC为例,当然WebForm也是可以的
使用步骤:
1、新建一个控制器和视图,该视图引用了_Layout母页版
2、在视图里引用相应的js
在页面上写一个table表格容器,这一句必须要有
<table id="ArbetTable"></table>
3、初始化bootstrap Table
$(function () {
//1.初始化Table
var oTable = new TableInit();
oTable.Init();
});
4、使用bootstrap Table
var TableInit = function () {
var oTableInit = new Object();
//初始化Table
oTableInit.Init = function () {
$('#ArbetTable').bootstrapTable({
url: '/Interface/GetData', //请求后台的URL(*)
method: 'get', //请求方式(*)
toolbar: '#toolbar', //工具按钮用哪个容器
striped: true, //是否显示行间隔色
cache: false, //是否使用缓存,默认为true,所以一般情况下需要设置一下这个属性(*)
pagination: true, //是否显示分页(*)
sortable: false, //是否启用排序
sortOrder: "asc", //排序方式
queryParams: oTableInit.queryParams,//传递参数(*)
sidePagination: "server", //分页方式:client客户端分页,server服务端分页(*)
pageNumber: 1, //初始化加载第一页,默认第一页
pageSize: 10, //每页的记录行数(*)
pageList: [10, 25, 50, 100], //可供选择的每页的行数(*)
search: true, //是否显示表格搜索,此搜索是客户端搜索,不会进服务端,所以,个人感觉意义不大
contentType: "application/x-www-form-urlencoded",
strictSearch: true,
showColumns: true, //是否显示所有的列
showRefresh: true, //是否显示刷新按钮
minimumCountColumns: 2, //最少允许的列数
clickToSelect: true, //是否启用点击选中行
height: 700, //行高,如果没有设置height属性,表格自动根据记录条数觉得表格高度
uniqueId: "no", //每一行的唯一标识,一般为主键列
showToggle: true, //是否显示详细视图和列表视图的切换按钮
cardView: false, //是否显示详细视图
detailView: false, //是否显示父子表
columns: [
{
field: 'ID',
title: 'ID'
}, {
field: 'Name',
title: '名字'
}, {
field: 'Sex',
title: '性别'
},
{
field: 'operate',
title: '操作',
formatter: operateFormatter //自定义方法,添加操作按钮
},
],
rowStyle: function (row, index) {
var classesArr = ['success', 'info'];
var strclass = "";
if (index % 2 === 0) {//偶数行
strclass = classesArr[0];
} else {//奇数行
strclass = classesArr[1];
}
return { classes: strclass };
},//隔行变色
});
};
//得到查询的参数
oTableInit.queryParams = function (params) {
var temp = { //这里的键的名字和控制器的变量名必须一直,这边改动,控制器也需要改成一样的
limit: params.limit, //页面大小
offset:params.offset
};
return temp;
};
return oTableInit;
};
function operateFormatter(value, row, index) {//赋予的参数
return [
'<a class="btn active disabled" href="#">编辑</a>',
'<a class="btn active" href="#">档案</a>',
'<a class="btn btn-default" href="#">记录</a>',
'<a class="btn active" href="#">准入</a>'
].join('');
}
5、后台url返回数据
public ActionResult GetData(int limit, int offset)
{
var data = new List<object>(){new { ID=1, Name="Arbet", Sex="男"},
new { ID= 2, Name="Arbet1", Sex="女" },
new {ID=3, Name="Arbet2",Sex="男" },
new {ID=4, Name="Arbet3",Sex="女" },
new {ID=5, Name="Arbet4",Sex="男" },
new {ID=6, Name="Arbet5",Sex="男" },
new {ID=7, Name="Arbet6",Sex="女" },
new {ID=8, Name="Arbet7",Sex="男" },
new { ID=9, Name="Arbet1", Sex="女" },
new {ID=10, Name="Arbet2",Sex="男" },
new {ID=11, Name="Arbet3",Sex="女" },
new {ID=12, Name="Arbet4",Sex="男" },
new {ID=13, Name="Arbet5",Sex="男" },
new {ID=14, Name="Arbet6",Sex="女" },
new {ID=15, Name="Arbet7",Sex="男" }
};
var total = data.Count;
var rows = data.Skip(offset).Take(limit).ToList();
return Json(new { total = total, rows = rows }, JsonRequestBehavior.AllowGet);
}
在本文中,博主以匿名集合来设置数据,大家可以通过查询数据库获取数据
在此需要注意:返回的参数必须是total和rows,total返回数据集总个数,rows返回table的json格式
6、展示效果
发现出现了这个bug,这是怎么回事
在浏览器上打开源代码
发现多了一些其他js文件,这是layout母页版里引入的js文件
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8" />
<meta name="viewport" content="width=device-width" />
<title>@ViewBag.Title</title>
@Styles.Render("~/Content/css")
@Scripts.Render("~/bundles/modernizr")
</head>
<body>
@RenderBody()
@*@Scripts.Render("~/bundles/jquery")*@
@RenderSection("scripts", required: false)
</body>
</html>
把上图中的红框里的js文件注释掉再运行
发现成功了!这是因为JS库文件的引用是有顺序的,必须先引用JQuery库文件,再引用插件js
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。
# Bootstrap
# Table
# JS表格组件神器bootstrap table详解(基础版)
# Bootstrap Table使用方法详解
# JS组件Bootstrap Table使用方法详解
# bootstrap table 服务器端分页例子分享
# Bootstrap Table的使用总结
# BootStrap table表格插件自适应固定表头(超好用)
# 第一次动手实现bootstrap table分页效果
# Bootstrap嵌入jqGrid
# 使你的table牛逼起来
# Bootstrap table分页问题汇总
# BootStrap 可编辑表Table格
# 分页
# 每页
# 第一页
# 需要注意
# 服务端
# 客户端
# 行数
# 这是
# 这一
# 行间
# 是有
# 在此
# 要有
# 可以通过
# 如果没有
# 自定义
# 分别为
# 为例
# 这是因为
# 必须先
相关栏目:
【
网站优化151355 】
【
网络推广146373 】
【
网络技术251813 】
【
AI营销90571 】
相关推荐:
宙斯浏览器怎么屏蔽图片浏览 节省手机流量使用设置方法
网站制作软件有哪些,制图软件有哪些?
如何在阿里云高效完成企业建站全流程?
如何注册花生壳免费域名并搭建个人网站?
php后缀怎么变mp4格式错误_修改扩展名提示格式不对怎么办【技巧】
微信小程序 scroll-view组件实现列表页实例代码
百度输入法ai组件怎么删除 百度输入法ai组件移除工具
网站建设要注意的标准 促进网站用户好感度!
如何快速上传建站程序避免常见错误?
EditPlus中的正则表达式 实战(4)
Laravel如何理解并使用服务容器(Service Container)_Laravel依赖注入与容器绑定说明
什么是javascript作用域_全局和局部作用域有什么区别?
laravel怎么用DB facade执行原生SQL查询_laravel DB facade原生SQL执行方法
怎么用AI帮你为初创公司进行市场定位分析?
在线ppt制作网站有哪些软件,如何把网页的内容做成ppt?
如何用搬瓦工VPS快速搭建个人网站?
Win11摄像头无法使用怎么办_Win11相机隐私权限开启教程【详解】
千问怎样用提示词获取健康建议_千问健康类提示词注意事项【指南】
EditPlus 正则表达式 实战(3)
Laravel如何生成和使用数据填充?(Seeder和Factory示例)
手机软键盘弹出时影响布局的解决方法
Laravel如何发送系统通知?(Notification渠道示例)
nodejs redis 发布订阅机制封装实现方法及实例代码
如何使用 jQuery 正确渲染 Instagram 风格的标签列表
悟空识字如何进行跟读录音_悟空识字开启麦克风权限与录音
如何快速搭建个人网站并优化SEO?
Laravel怎么处理异常_Laravel自定义异常处理与错误页面教程
敲碗10年!Mac系列传将迎来「触控与联网」双革新
Laravel的.env文件有什么用_Laravel环境变量配置与管理详解
Laravel软删除怎么实现_Laravel Eloquent SoftDeletes功能使用教程
智能起名网站制作软件有哪些,制作logo的软件?
DeepSeek是免费使用的吗 DeepSeek收费模式与Pro版本功能详解
linux写shell需要注意的问题(必看)
Laravel Eloquent关联是什么_Laravel模型一对一与一对多关系精讲
网页制作模板网站推荐,网页设计海报之类的素材哪里好?
如何彻底删除建站之星生成的Banner?
太平洋网站制作公司,网络用语太平洋是什么意思?
常州企业网站制作公司,全国继续教育网怎么登录?
Laravel如何配置和使用缓存?(Redis代码示例)
Laravel如何创建和注册中间件_Laravel中间件编写与应用流程
Laravel怎么实现验证码(Captcha)功能
Gemini怎么用新功能实时问答_Gemini实时问答使用【步骤】
非常酷的网站设计制作软件,酷培ai教育官方网站?
Laravel队列由Redis驱动怎么配置_Laravel Redis队列使用教程
Laravel如何实现多语言支持_Laravel本地化与国际化(i18n)配置教程
实例解析angularjs的filter过滤器
如何在阿里云ECS服务器部署织梦CMS网站?
Laravel如何使用Socialite实现第三方登录?(微信/GitHub示例)
如何基于云服务器快速搭建个人网站?
原生JS实现图片轮播切换效果

