手把手教你--Bootstrap Table表格插件的使用及数据导出(可导出Excel2003及Exce2007)

BootStap中tableExport控件 此控件为BootStrap中将Table导出Excel时所使用的控件。内含有:tableExport.js和tableExport.min.js。其中tableExport.js是为方便开发者查看研究。tableExport.min.js是使用时减少资源,节约资源。 立即下载

1.介绍

Bootstrap Table介绍见官网-中文:https://www.bootstrap-table.com.cn/

Bootstrap 中文网:http://www.bootcss.com/       

Bootstrap Table Demo:http://issues.wenzhixin.net.cn/bootstrap-table/index.html

Bootstrap Table API-中文:https://www.bootstrap-table.com.cn/doc/api/table-options/

Bootstrap Table源码:https://github.com/wenzhixin/bootstrap-table

Boostrap Table 扩展API:http://bootstrap-table.wenzhixin.net.cn/extensions/

2.页面引用

为了方便bootstrap及bootstrap-table用官方推荐引用方式,想自己下载源码可以自行下载.

导出Excel所需额外的4个js可从以下2个地址找到那4个文件,不需要导出的可以无视.

下载地址   https://github.com/wenzhixin/bootstrap-table/tree/master/src/extensions/export

                https://github.com/hhurz/tableExport.jquery.plugin

<!-- 引入bootstrap样式 -->
<link href="https://cdn.bootcss.com/bootstrap/3.3.6/css/bootstrap.min.css" rel="stylesheet"> 
<!-- 引入bootstrap-table样式 -->
<link href="https://cdn.bootcss.com/bootstrap-table/1.11.1/bootstrap-table.min.css" rel="stylesheet"> 

<!-- jquery及bootstrapjs -->
<script src="https://cdn.bootcss.com/jquery/2.2.3/jquery.min.js"></script>
<script src="https://cdn.bootcss.com/bootstrap/3.3.6/js/bootstrap.min.js"></script> 

<!-- bootstrap-table.min.js -->
<script src="https://cdn.bootcss.com/bootstrap-table/1.11.1/bootstrap-table.min.js"></script> 
<!-- 引入中文语言包 -->
<script src="https://cdn.bootcss.com/bootstrap-table/1.11.1/locale/bootstrap-table-zh-CN.min.js"></script> 
<!-- bootstrap-table-export数据导出---后面两个是Excel2007所需要的js -->
<script src="${basePath }/js/bootstrap-table-export.js"></script>
<script src="${basePath }/js/tableExport.min.js"></script>
<script src="${basePath }/js/xlsx.core.min.js"></script> 
<script src="${basePath }/js/FileSaver.min.js"></script

3.简单示例

3.1在html中定义一个table标签

<table id="table"></table>

3.2使用bootstrap-table有两种方式,第一种是:通过data属性的方法--因为不灵活不做过多演示.类似

<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方式,几乎所有使用bootstrap-table的全是以这种方式,学习bootstrap-table,就是学习它的API,介绍基本常用的API,详情请查看官方文档或看这个博主翻译的---(注:现在有了中文版,可以直接官网查看api介绍)

https://blog.youkuaiyun.com/rickiyeat/article/details/56483577

页面引入以下js

$("#table").bootstrapTable({ // 对应table标签的id
      url: base_path + "/product/list",   //AJAX获取表格数据的url
      striped: true,                      //是否显示行间隔色(斑马线)
      pagination: true,                   //是否显示分页(*)
      sidePagination: "server",           //分页方式:client客户端分页,server服务端分页(*)
      paginationLoop: false,		  //当前页是边界时是否可以继续按
      queryParams: function (params) {    // 请求服务器数据时发送的参数,可以在这里添加额外的查询参数,返回false则终止请求
			return {
			limit: params.limit, // 每页要显示的数据条数
			offset: params.offset, // 每页显示数据的开始行号
			//sort: params.sort, // 要排序的字段
			//sortOrder: params.order, // 排序规则
			//dataId: $("#dataId").val() // 额外添加的参数
		  }
      },//传递参数(*)
      pageNumber:1,                       //初始化加载第一页,默认第一页
      pageSize: 10,                       //每页的记录行数(*)
      pageList: [10, 25, 50, 100,'all'],  //可供选择的每页的行数(*)
      contentType: "application/x-www-form-urlencoded",//一种编码。在post请求的时候需要用到。这里用的get请求,注释掉这句话也能拿到数据
      //search: true,                     //是否显示表格搜索,此搜索是客户端搜索,不会进服务端,所以,个人感觉意义不大
      strictSearch: false,		  //是否全局匹配,false模糊匹配
      showColumns: true,                  //是否显示所有的列
      showRefresh: true,                  //是否显示刷新按钮
      minimumCountColumns: 2,             //最少允许的列数
      clickToSelect: false,               //是否启用点击选中行
      //height: 500,                      //行高,如果没有设置height属性,表格自动根据记录条数觉得表格高度
      //uniqueId: "id",                   //每一行的唯一标识,一般为主键列
      showToggle:true,                    //是否显示详细视图和列表视图的切换按钮
      cardView: false,                    //是否显示详细视图
      detailView: false,                  //是否显示父子表
      cache: false,                       // 设置为 false 禁用 AJAX 数据缓存, 默认为true
      sortable: true,                     //是否启用排序
      sortOrder: "asc",                   //排序方式
      sortName: 'sn', // 要排序的字段
      columns: [
          {
              field: 'sn', // 返回json数据中的name
              title: '订货号', // 表格表头显示文字
              align: 'center', // 左右居中
              valign: 'middle' // 上下居中
          }, {
              field: 'productname',
              title: '商品名称',
              align: 'center',
              valign: 'middle'
          }, {
              field: 'cost',
              title: '价格(¥)',
              align: 'center',
              valign: 'middle',
              sortable:true
          }, {
              field: 'brankname',
              title: '品牌',
              align: 'center',
              valign: 'middle',
          }, {
              field: 'specificationvalues',
              title: '规格',
              align: 'center',
              valign: 'middle',
          }, {
              field: 'areaname',
              title: '产地',
              align: 'center',
              valign: 'middle',
          }
      ],
      onLoadSuccess: function(){  //加载成功时执行
    	  console.info("加载成功");
      },
      onLoadError: function(){  //加载失败时执行
          console.info("加载数据失败");
      },
      
      //>>>>>>>>>>>>>>导出excel表格设置
      showExport: phoneOrPc(),              //是否显示导出按钮(此方法是自己写的目的是判断终端是电脑还是手机,电脑则返回true,手机返回falsee,手机不显示按钮)
      exportDataType: "basic",              //basic', 'all', 'selected'.
      exportTypes:['excel','xlsx'],	    //导出类型
      //exportButton: $('#btn_export'),     //为按钮btn_export  绑定导出事件  自定义导出按钮(可以不用)
      exportOptions:{  
          //ignoreColumn: [0,0],            //忽略某一列的索引  
          fileName: '数据导出',              //文件名称设置  
          worksheetName: 'Sheet1',          //表格工作区名称  
          tableName: '商品数据表',  
          excelstyles: ['background-color', 'color', 'font-size', 'font-weight'],  
          //onMsoNumberFormat: DoOnMsoNumberFormat  
      }
      //导出excel表格设置<<<<<<<<<<<<<<<<

});
/*判断终端是手机还是电脑--用于判断文件是否导出(电脑需要导出)*/
function phoneOrPc(){
	var sUserAgent = navigator.userAgent.toLowerCase();  
	var bIsIpad = sUserAgent.match(/ipad/i) == "ipad";  
	var bIsIphoneOs = sUserAgent.match(/iphone os/i) == "iphone os";  
	var bIsMidp = sUserAgent.match(/midp/i) == "midp";  
	var bIsUc7 = sUserAgent.match(/rv:1.2.3.4/i) == "rv:1.2.3.4";  
	var bIsUc = sUserAgent.match(/ucweb/i) == "ucweb";  
	var bIsAndroid = sUserAgent.match(/android/i) == "android";  
	var bIsCE = sUserAgent.match(/windows ce/i) == "windows ce";  
	var bIsWM = sUserAgent.match(/windows mobile/i) == "windows mobile";  
	if (bIsIpad || bIsIphoneOs || bIsMidp || bIsUc7 || bIsUc || bIsAndroid || bIsCE || bIsWM) {  
		return false;  
	} else {  
	    return true; 
	}  
}

需要注意的项

1.测试时分页先选择'client',因为分页是客户端的话,导出数据会方便可以随意定义'basic', 'all', 'selected'.如果分页是服务端的话即使选择'all导出的也是当前页('basic'),如果想导出全部话,可以先将页面显示条目数为全部,再导出当前页即就是全部数据了.

2.分页如果是服务端的话返回的json串必须包含2个数据,一个是"total"即所有数据条数.另一个"rows"即"当前页"显示的内容.(见下图json串格式)

后台参考代码(以服务端分页为例,如果客户端分页先把方法参数去掉,再把for循环改成循环100次,后直接返回list即可)

@Controller
@RequestMapping("/product")
public class TestController {

	@RequestMapping("/list")
	@ResponseBody
	public Map<String,Object> listProduct(@RequestParam(value = "limit", required = false)Integer limit, @RequestParam(value = "offset", required = false)Integer offset) {
		Map<String,Object> map = new HashMap<>();
		
		List<SkuExt> list = new ArrayList<SkuExt>();//此处应该是从数据库查出来的数据,为了测试方便写个循环
		for (int i = offset; i < limit+offset; i++) {
			SkuExt skuExt = new SkuExt();
			skuExt.setSn(i+"");
			skuExt.setProductname("商品名称"+i);
			skuExt.setCost(new BigDecimal(i*100));
			skuExt.setBrankname("品牌名称"+i);
			skuExt.setSpecificationvalues("规格值是"+i);
			skuExt.setAreaname("产地"+i);
			list.add(skuExt);
		}
		map.put("total", 100);//假设共有100条数据
		map.put("rows", list);
        return  map;
    }

--------------------------------------以上就是代码,效果如下------------------------------------------

showToggle:true这个属性的效果如下:

导出按钮效果如下:导出的按钮和下拉提示应该不是这样,是我自己改了里面内容文字,很好实现.

 

以上,纯手写,大神勿喷.

Bootstrap Table 在指定列中添加下拉框控件并获取所选值 背景 最近在使用Bootstrap table ,有一个在某一列添加一个下拉列表,并且通过 “getAllSelections”方法获取所选行的需求,在实现这个功能的时,走了一些弯路,遇到了一些坑。所以今天总结出来,既是自己的学习,也分享给大家,希望能够有些帮助。 如何解决 添加这个下拉列表有以下两种方法: 利用Column options 中的 formatter 将数据转换成下拉列表的形式 使用bootstrap-table拓展中的editable插件 这次主要介绍第一种,基本的思路为:首先通过 bootstrap-table 的Column 配置项中的formatter,将获取到 立即下载

相关推荐

Linux安装部署PostgreSQL详细步骤

Linux安装部署PostgreSQL详细步骤

2301_77356579的博客 9323

bootstrapTable的使用及表格的导出_bootstraptable 导出

有toolbar:的样式无toolbar:的样式(2)sidePagination:"client"或 “server”:分页方式:client客户端分页,server服务端分页(*)**client客户端分页:**如果是客户端分页的话,每次请求数据时请求的是全部数据,传递的请求参数中没有pageSize和PageNumber这两个属性;server服务端分页:如果是r服务端分页的话,每次请求数据时请求的是全部数据,传递的请求参数中必须有pageSize和PageNumber这两个属性;

2401_84240369的博客 3625

人大金仓的‘影子表’sys_user:搞懂Schema优先级,告别字段不存在的报错

本文深入解析人大金仓数据库中‘影子表’sys_user的Schema优先级问题,帮助开发者解决字段不存在的报错。通过分析Schema搜索路径机制,提供四种解决方案,包括连接时指定Schema、动态调整搜索路径、永久修改用户设置和使用完全限定表名,确保查询准确无误。

weixin_30329623的博客 597

使用bootstrapTable实现导出功能

exportDataType //导出表格方式(默认basic:只导出当前页的表格数据;all:导出所有数据;selected:导出选中的数据)这几种属性一般都会在之前导入的文件中设置默认属性 在具体使用时会变更属性。exportTypes //导出文件类型 ,支持多种类型文件导出。一般只需要编辑其fileName属性即可,其含义为导出文件名称。1.导入相关插件 根据自身项目路径导入。3.在设置exportOptions值时。2.然后就是初始化设置导出属性即可。这个里有相应插件介绍。

gift_z的博客 1687

NE5532A与JRC4580在低噪声音频电路设计中的关键应用

本文深入探讨了经典运算放大器NE5532A与JRC4580在低噪声音频电路设计中的核心应用。文章从噪声模型分析入手,阐述了针对低阻抗信号源时,如何利用这两款BJT输入运放的低电流噪声特性进行优化设计。通过对比两者参数与实战守则,为设计高保真音频前级、耳机放大等电路提供了从原理图到PCB布局的完整低噪声解决方案。

weixin_29295541的博客 331

原形网络(Prototypical Networks)基于PyTorch的实现

我在Jay2coomzz的基础上修改了数据处理方式和evaluation_model()方法,作为初学者若有不当之处恳请大家批评指正,原文链接如下: https://blog.youkuaiyun.com/weixin_38471579/article/details/102631018 数据集和源码链接将放到评论区 文章目录1 数据集一个简单的数据集介绍数据集处理2 搭建网络CNNProtonets 1 数据集 一个简单的数据集介绍 Omniglot数据集一共包含1623 类手写体,每一类中包含20 个样本。其中.

weixin_43872532的博客 6637

bootstrapTable的使用及表格的导出

bootstrapTable的使用及表格的导出

Mr_XiMu的博客 1万+

微信小程序一键跳转公众号(使用 official-account 组件)

在当今移动互联网时代,用户体验已成为应用成功的关键因素之一。微信小程序作为一种便捷的应用形式,广泛应用于各个行业,为用户提供了丰富的服务和信息。然而,如何进一步提升用户体验,使其在小程序中能够更方便地获取相关信息,成为开发者需要关注的重要课题。实现一键跳转到公众号的功能,正是一个有效的解决方案。通过这一功能,用户可以轻松访问公众号,获取更多内容和服务,从而增强与品牌的互动和粘性。本文将详细介绍如何在微信小程序中实现这一功能,并提供相关的操作步骤和注意事项。

不迁怒,不贰过。小知识,大智慧。 3128

[转]手把手教你--Bootstrap Table表格插件及数据导出(可导出Excel2003及Exce2007)

原文地址:https://blog.youkuaiyun.com/javayoucome/article/details/80081771 1.介绍 Bootstrap Table介绍见官网:http://bootstrap-table.wenzhixin.net.cn/zh-cn/ Bootstrap 中文网:http://www.bootcss.com/        Bootstrap Table De...

weixin_33958366的博客 431

YOLOv8融合HAttention:激活更多像素的注意力机制科研实践指南

HAttention通过层级化像素激活与融合的设计,为YOLOv8的像素级特征利用能力带来了质的飞跃。从原理理解到代码实现,再到集成调优,每一步都是科研中“解决像素信息遗漏难题”的具体实践。如果你在实验中发现某类细节或大尺度目标的检测仍有不足,可以尝试结合数据增强(如随机裁剪、多尺度训练)来强化模型对像素特征的学习能力。科研的价值在于不断挖掘技术的潜力,希望这份指南能真正帮你在目标检测的像素级特征利用领域找到新的突破点,祝你在科研探索中持续收获创新与成长。

FJN110的博客 106

“探索thumbdata4文件的奥秘:编程中的神秘存在“

综上所述,thumbdata4文件在编程中是一个常见的存在,与图库应用程序和图片浏览器密切相关。通过使用适当的库和工具,我们可以读取和处理thumbdata4文件中的缩略图数据,以提供更好的用户体验。我们首先读取8字节的块头,其中包含了下一个缩略图块的大小。你可以根据自己的需求来定义对块数据的处理方式,例如将其保存为图像文件或进行其他的分析操作。thumbdata4文件通常以二进制格式存储,其中包含着设备上浏览过的图片的缩略图。因此,你可能需要根据具体的thumbdata4文件结构进行适当的解析和处理。

JieLun_C的博客 792

最终解决:bootstrapTable 导出全部数据。

原文地址: http://www.5ixiudou.com/portal/detailInfo/1000000005/228 受备案影响,原网页可先访问:http://106.12.198.137:8080/portal-web/portal/detailInfo/1000000005/228 一、问题描述: 1.在工作中,人们比较喜欢用 bootstrapTable 进行数据的展示...

tianjiliuhen的博客 2万+

AUTOSAR进阶图解==>AUTOSAR_SWS_CANStateManager

AUTOSAR CAN状态管理器(CanSM)摘要 CanSM是AUTOSAR通信栈中的关键模块,负责管理CAN网络状态和模式转换。主要功能包括: 控制CAN控制器/收发器工作模式(STARTED/STOPPED,NORMAL/STANDBY) 处理三种网络状态(全通信、静默通信、无通信)之间的转换 监控和处理总线关闭(Bus-Off)事件 与ComM、CanIf、BswM等模块协同工作 CanSM通过状态机管理网络状态转换,支持可配置的总线关闭恢复策略。它为每个CAN网络维护独立的状态机,实现网络状态的精

一名留德华的,康德的信徒的,专注于汽车电子领域的博客 5580

bootstrap-table数据导出Excel 、JSON、txt、pdf等

所谓客户端模式,指的是在服务器中把要显示到表格的数据一次性加载出来,然后转换成JSON格式传到要显示的界面中,客户端模式较为简单,它是把数据一次性加载出来放到界面上,然后根据你设置的每页记录数,自动生成分页。导出类型,支持类型:​​“ json”,“ xml”,“ png”,“ csv”,“ txt”,“ sql”,“ doc”,“ excel”,“ xlsx”,“ pdf”。导出数据类型,支持:​​​“basic”,“all”,“selected”。设置​​​true​​为导出表脚。

m0_63132093的博客 1234

老版QQ原生表情gif动态

这是老版的QQ表情,不过全是动态的的,Windows照片查看器是不会动的,可以右击用浏览器打开查看,再说一遍是老版的,只是分享给宁愿用老版也要动态的人。

IEM模型,地表粗糙度模拟

利用微波反演土壤水分时候,利用IEM模型可以实现对随机地表的模拟

bootstrap Table 选中导出

//导出选中表数据 function getExport() { $element = $(this); var key = $element.attr('data-key'); var $bstable = $('[data-toggle="table"]'); var selections = $bstable.bootstrapTable('...

jack_rose_me的博客 1360

Camera2Demo

在Camera2 的基础上进行封装,使得Camera2一堆初始化逻辑与Activity分离,降低耦合度,完成预览拍照并保存的操作

基于bootstrap table分页数据及行内编辑和导出数据(一)

此文章是基于bootstrap的表格案例,包含分页、按钮切换、日期插件、导出表格、行内编辑等功能                             @*         *@                     布局页面:

且行且珍惜 8828

jdk-8u144-linux-x64.tar.gz.

该资源为搭建Linux系统Java环境用,资源的后缀为tar.gz格式的压缩包

Bootstrap-Table将全部数据导出为Excel的方法

在一般的系统开发中,将表格数据导出为Excel是一项常见的功能。导出Excel分为三种情况,第一种情况是导出当前页的数据,第二种情况是导出当前页已选择的数据,第三种情况是导出全部数据。前两种情况大致相同,本质上可归为一类,因为它们都只是针对当前页的数据进行操作,一般可在前端直接进行JSON到Excel的转换。而第三种情况则略微复杂一些,因为大多数情况下我们会使用服务器端分页对数据进行展示。下面以B...

HerryDong的博客 6167

在使用bootstrap-table导出excel时遇到了问题:第一列显示为on

使用bootstrap-table自带的导出excel时,页面第一列为复选框,如图: 此时导出的excel会多出一列,且值为on,如图: 解决办法如下,直接上代码: exportOptions : { ignoreColumn: [0], fileName : '航班动态监控', worksheetName : '航班动态监控', tableName ...

海紫苑打不死马小跳的博客 4735

bootstrap-table数据导出及Checkbox相关设置

相关功能: bootstrapTable url请求Springmvc controller获取json数据加载到table中 bootstrap-table-export导出表格数据 checkbox value设置及获取 >>>导入相关js 1 <link rel="stylesheet" href="/css/bootstrap.mi...

286

bootstrapTable数据导出为excel

引入文件: &lt;!--jquery--&gt; &lt;script type="text/javascript" src="../../libs/jquery/jquery.js"&gt;&lt;/script&gt; &lt;!--bootstrap--&gt; &lt;script type="text/javascript" src="../../li

wangchaohpu的博客 1万+

bootstrap-table(四)数据导出

写在前面:服务器分页只能导出当前页数据 使用 bootstrap-table官网扩展上是有导出功能的,bootstrap-table-export。同时还需要一个插件:tableExport.min.js script type=&quot;text/javascript&quot; src=&quot;tableExport.min.js&quot;&amp;gt;&amp;lt;/script&amp;gt; &amp;lt;scri

天空影 5059

BootStrapTable的TableExport数据导出插件的使用

TableExport数据导出插件的使用 要想实现表格数据的导出,我们可以使用bootstrap的扩展插件Table Export来实现我们的需求。 即:bootstrap-table-export.js 由于数据导出功能是BootStrapTable的功能的扩展,而且插件依赖于tableExport.jquery.plugin中的tableExport.js。 关于tableExport...

编程小透明的博客 3万+

bootstrap table 导出所有全部数据

到官网下载bootstrap table 压缩包和tableExport.js。两个文件自行百度。 页面引用以下文件 bootstrap-table.css bootstrap-table.js tableExport.js bootstrap-table-export.js 表格属性加入 $('#table').bootstrapTable({showExport:

a1721593222的博客 1万+

2024年最全bootstrapTable的使用及表格的导出_bootstraptable 导出(2),阿里珍藏版Golang框架体系架构手写文档

``

2401_84910869的博客 571
上一篇: 手把手教你--JAVA微信支付(公众号支付JSAPI)
下一篇: 手把手教你--jquery chosen插件的使用和API(html下拉框美化)
小流至江河
博客等级 码龄9年 223粉丝 53原创
评论 34
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值