SpreadJS支持了很多Excel不支持的单元格类型,例如复选框单元格、单选列表、复选框列表等等,这为用户在展示数据时提供了直观易用的选择方式。

点击获取SpreadJS工具下载

然而,当用户将包含此类型的的文件导出Excel时,就会发现出现了一定的问题。以复选框为例,在SpreadJS中用户处于选中状态,而当导出到Excel中时,会发现复选框区域的数值变成True了。

这是因为,复选框呈现出的小框属于SpreadJS特有的样式信息,而当getValue()时,取到的其实仍旧是true/false/null。而导出到Excel时,Excel并不支持这种样式信息,获取到的依旧是true/false/null。

本文以复选框为例,实现一个将复选框导出到Excel,并使其维持正常样式的方案。

实现思路:

Step1: 导出前循环判断sheet中是否包含复选框单元格;

sheet.getCellType(i,j) instanceof GC.Spread.Sheets.CellTypes.CheckBox

Step2: 判断复选框时否为三态复选框,根据不同的状态取对应的值;

let text = ''
let checkbox = sheet.getCellType(i,j)
if(sheet.getCellType(i,j).isThreeState()){
text = sheet.getValue(i,j) ? checkbox.textTrue() : (
sheet.getValue(i,j) == null ? checkbox.textIndeterminate():checkbox.textFalse()
)}else{
text = sheet.getValue(i,j) ? sheet.textTrue() : sheet.textFalse()
}

Step3:将复选框坐在单元格类型置空;

sheet.setCellType(i,j,nulll)

Step4: 设置文本样式给对应的单元格。

sheet.getValue(i,j) ? sheet.setValue(i,j,'☑ ' + text) : sheet.setValue(i,j,'☐ ' + text)

通过上述四步,就可以完成将复选框导出Excel的功能了。

SpreadJS | 下载试用

纯前端表格控件SpreadJS,兼容 450 种以上的 Excel 公式,具备“高性能、跨平台、与 Excel 高度兼容”的产品特性,备受华为、苏宁易购、天弘基金等行业龙头企业的青睐,并被中国软件行业协会认定为“中国优秀软件产品”。SpreadJS 可为用户提供类 Excel 的功能,满足表格文档协同编辑、 数据填报、 类 Excel 报表设计等业务场景需求,极大的降低企业研发成本和项目交付风险。

本文转载自葡萄城

纯前端表格工具使用 - SpreadJS如何将复选框导出Excel相关推荐

  1. 纯前端表格控件SpreadJS:电子表格技术实践 - 内存

    在前端表格中,表格可以是松散布局的一种UI表达方式,它的最小描述单元是一个单元格,也就是我们常说的CellBase. 点击获取SpreadJS工具下载 常用的数据结构有二维数组和对象数组,对于二维数组 ...

  2. 纯前端表格控件SpreadJS新手入门指南 - 复制粘贴

    点击获取SpreadJS v15.0官方正式版下载 复制粘贴到Excel 设置Workbook的options属性的allowCopyPasteExcelStyle属性,可设置复制粘贴是否带样式.选择 ...

  3. autojs遍历当前页面所有控件_纯前端表格控件SpreadJS V14.0发布:组件化编辑器+数据透视表 - 葡萄城开发工具...

    SpreadJS 是一款基于 HTML5 的纯前端表格控件,兼容 450 种以上的 Excel 公式,具备"高性能.跨平台.与 Excel 高度兼容"的产品特性,可为用户提供高度类 ...

  4. 纯前端表格控件SpreadJS V12.1 隆重登场,专注易用性,提升用户体验

    ​ 一款优秀的开发工具,在更新迭代中,除了要满足不同场景的业务需求,也需不断优化已有功能,尤其是细节方面,要能为用户带来使用体验和开发效率的提升. 作为一款备受业界专家和开发者认可的纯前端类Excel ...

  5. 纯前端表格控件SpreadJS以专注业务、提升效率赢得用户与市场

    提起华为2012实验室,你可能有点陌生. 但你一定还对前段时间华为的那封<海思总裁致员工的一封信>记忆犹新,就在那篇饱含深情的信中,我们知道了华为为确保公司大部分产品的战略安全和连续供应, ...

  6. js固定表格行列_纯前端表格控件SpreadJS V14.0发布:组件化编辑器+数据透视表

    SpreadJS 是一款基于 HTML5 的纯前端表格控件,兼容 450 种以上的 Excel 公式,具备"高性能.跨平台.与 Excel 高度兼容"的产品特性,可为用户提供高度类 ...

  7. 纯前端表格控件SpreadJS V14.0发布:组件化编辑器+数据透视表

    SpreadJS 是一款基于 HTML5 的纯前端表格控件,兼容 450 种以上的 Excel 公式,具备"高性能.跨平台.与 Excel 高度兼容"的产品特性,可为用户提供高度类 ...

  8. layui把表格重载为最新状态,复选框选中去重

    layui把表格重载为最初始的状态 前端自己操作不调用接口 1.把第一个表格选中的数据显示到第一个表格的下方 2.处理成下边展示的数据需要合并单元格 3.点击删除第一个表格需要重载为不选中无值的状态, ...

  9. java数据透视表插件_纯前端表格控件SpreadJS:新增数据透视表插件等,完美呈现强大的Excel数据分析能力...

    SpreadJS是一款基于 HTML5 的纯前端电子表格控件,兼容 450 种以上的 Excel 公式,凭借其 "高性能.跨平台.与 Excel 高度兼容"的产品特性,备受以华为. ...

  10. 纯前端表格控件SpreadJS开发案例:收入损益表(附源码)

    SpreadJS是一款基于 HTML5 的原生JavaScript组件,兼容 450 种以上的 Excel 公式,提供高度类似 Excel 的功能,主要用于开发 Web Excel 组件,实现多人协同 ...

最新文章

  1. 云计算推进企业管理深化,私有云将会深入企业
  2. 解决webpack打包bootstrap报字体不能解析问题
  3. python贪吃蛇毕业设计_【干货|python项目实例——贪吃蛇】- 环球网校
  4. (39)VHDL实现移位寄存器(方法1)
  5. phpMyAdmin登录时指定服务器ip和端口的方法
  6. WebService之Axis2快速入门(2): 传递复合类型的数据
  7. windows局域网共享文件
  8. 浅析ip地址的分类及地址范围
  9. Peewee fn 用法
  10. 勘探重力实验matlab,MATLAB在重力图制作中的应用
  11. 优惠券制作和分配(含代码)
  12. C#开发:创建gif图片
  13. 【全网最全面】SourceTree使用教程详解(连接远程仓库,克隆,拉取,提交,推送,新建/切换/合并分支,冲突解决,提交PR)...
  14. HGVS制订的变异位点命名规则
  15. 点击邮件自动弹出发送邮件窗口
  16. 网络调试工具TCP/UDP socket的使用
  17. hsqldb 使用简介
  18. 如何看待知乎、饿了么后端的招聘纷纷由 Python 渐渐转向 Java?
  19. 在NP下用OD调试游戏的方法(转)
  20. Big Endian(大端)和 Little Endian(小端)模式

热门文章

  1. CTF压缩包隐写类(zip、RAR、zip伪加密)
  2. 机器学习基本概念-有监督学习和无监督学习
  3. 基于JAVA社团管理系统计算机毕业设计源码+数据库+lw文档+系统+部署
  4. 【三维GIS】Google Map/Google Earth三维模型提取
  5. html英雄联盟网页,Html+Css+JQuery实现简易英雄联盟官网
  6. python在条件表达式中不允许使用_在条件表达式中不允许使用赋值运算符 = ,会提示语法错误。...
  7. 微信小应用官方开发文档
  8. 2020年G3锅炉水处理证模拟考试题库及G3锅炉水处理理论考试试题
  9. excel 连接 matlab,matlab与excel连接
  10. IT奶爸的育儿学习之路