json导出excel表格


HTML

<el-button type="danger" class="ml10 fr" @click="exportForm">导出表格</el-button>

JS

表格输出的数字,如果太长,会自动计算,解决办法:
在td上加上样式 style=“mso-number-format:’\@’”

//导出表格
exportForm(){let that = this;let jsonData = [];for(let i in this.tableList){let tr = {times: this.tableList[i].times,pv: this.tableList[i].pv,uv: this.tableList[i].uv,click: this.tableList[i].click,firstPay: this.tableList[i].firstPay,firstAmount: this.tableList[i].firstAmount,shard: this.tableList[i].shard,};jsonData.push(tr);console.log(tr)}//列标题var str = '';str += '<tr><th>时间</th><th>访问量(pv)</th><th>访问人数(uv)</th><th>预购点击量</th><th>已付定金人数</th><th>已收到定金(元)</th><th>分享次数</th></tr>';//循环遍历,每行加入tr标签,每个单元格加td标签for(let i = 0 ; i < jsonData.length ; i++ ){str+='<tr>';for(let item in jsonData[i]){//增加\t为了不让表格显示科学计数法或者其他格式str+=`<td style="mso-number-format:'\\@'">${ jsonData[i][item] + '\t'}</td>`;}str+='</tr>';}str += '<tr><td></td></tr>';str += '<tr><td>总计:</td><td style="mso-number-format:\'\\@\'">'+this.sum.pv+'</td><td style="mso-number-format:\'\\@\'">'+this.sum.uv+'</td><td style="mso-number-format:\'\\@\'">'+this.sum.click+'</td><td style="mso-number-format:\'\\@\'">'+this.sum.firstPay+'</td><td style="mso-number-format:\'\\@\'">'+this.sum.firstAmount+'</td><td style="mso-number-format:\'\\@\'">'+this.sum.shard+'</td></tr>';var worksheet = 'Sheet1'; //Worksheet名var uri = 'data:application/vnd.ms-excel;base64,';//下载的表格模板数据var template = `<html xmlns:o="urn:schemas-microsoft-com:office:office" xmlns:x="urn:schemas-microsoft-com:office:excel" xmlns="http://www.w3.org/TR/REC-html40"><head><!--[if gte mso 9]><xml><x:ExcelWorkbook><x:ExcelWorksheets><x:ExcelWorksheet><x:Name>${worksheet}</x:Name><x:WorksheetOptions><x:DisplayGridlines/></x:WorksheetOptions></x:ExcelWorksheet></x:ExcelWorksheets></x:ExcelWorkbook></xml><![endif]--></head><body><table>${str}</table></body></html>`;//下载模板// window.location.href = uri + this.base64(template)var link = document.createElement("a");link.href = uri + this.base64(template);link.download = '表格下载' + ".xls";link.style = "visibility:hidden";document.body.appendChild(link);link.click();document.body.removeChild(link);
},
base64 (s) {return window.btoa(unescape(encodeURIComponent(s)))
},

【JS】json导出到excel,自定义文件名和后缀名相关推荐

  1. chrome 插件把 json 导出为 excel

    chrome 插件把 json 导出为 excel 要将 JSON 数据导出为 Excel 文件,可以使用 JavaScript 库如 SheetJS 和 FileSaver.js,以及 Chrome ...

  2. 教你给每个文件的文件名、后缀名一键重命名的操作方法

    当我们需要一次性修改多个文件名及后缀名的话如何进行操作才能快速完成重命名工作呢?下面就来给大家分享批量操作的方法,希望可以帮助大家提高完成工作的效率吧,下面一起看操作. 准备工具: 下载一个[文件批量 ...

  3. 文件名(后缀名)修改

    今天发现之前帮女朋友下载的很多小视频都是*.rmv的格式,刚好我的默认播放器是不支持.我就想把这些视频文件都改成*.RMVB的格式. 就自己写了段代码来实现 文件名(后缀名)修改的小函数.刚开通博客就 ...

  4. php 批量改文件名后缀名_PHP 批量修改文件名/文件后缀名(扩展名)

    今天我有几千个文件要一次修改文件或把后缀名给改了,但是我要手工一个个去改,不得改几天后来想到一个办法,利用php写一个量修改文件名/文件后缀名程序,一下就实现了,下面来看看方法. 几个关键的函数. i ...

  5. vue纯前端实现json导出为excel文件(xlsx.full.min.js)

    废话不多说,能实现导出为excel的库也不少,这次我用的是xlsx.full.min.js(git地址:https://github.com/SheetJS/sheetjs) 在utils里简单封装一 ...

  6. 微信小程序 数组 Json 导出到excel

    好多年没有搬砖了,最近看微信小程序比较好玩,就试着搞几个小程序玩一玩.因为是业余的,主要是面向需求编程,面向百度/bing编程.不过一些相关的代码的奇奇怪怪的问题,搜索引擎都会最终带领我到CSND/ ...

  7. c语言;文件名批量修改要求可以修改整个文件内文件名或后缀名自动,Python批量修改文件名...

    处理语料库时,有些文件名字很不规则,为了方便处理,同义按数字顺序修改名称,主要是用到os模块: import os def RenameFiles(srcdir): #将目录下所有的文件命名为数字开头 ...

  8. c语言;文件名批量修改要求可以修改整个文件内文件名或后缀名自动,ubuntu批量修改文件名字(换动画资源必用)...

    Ubuntu 16.04 批量改文件名 在Ubuntu16.04下给文件批量改名可以使用rename命令. MATLAB中批量修改文件的名字 在运行matlab时有时需要用统一的文件格式,这个时候对文 ...

  9. FileUtils【获取SD卡根目录、读写文件、移动、复制、删除文件、获取文件名、后缀名操作类】...

    版权声明:本文为HaiyuKing原创文章,转载请注明出处! 前言 封装了获取SD卡根目录路径.以及对文件读写.获取文件名等相关操作. 因为需要用到android.permission.READ_EX ...

最新文章

  1. 【JavaScript总结】JavaScript语法基础:JS编码
  2. 从内存溢出看Java 环境中的内存结构
  3. JS基础类型和引用类型
  4. php如何定时执行任务
  5. scrapy (2)下载图片及存储信息
  6. wingide的使用方法积累
  7. python2.7 跨文件全局变量的方法
  8. 征战蓝桥 —— 2014年第五届 —— C/C++A组第5题——锦标赛
  9. centos mysql无法启动 sock_【零基础学云计算】MYSQL的主从复制、读写分离
  10. 我在WordCamp上学到的有关新WordPress Gutenberg编辑器的知识
  11. 语音识别在智能交通中的几种应用分析
  12. oracle ORA-00054 资源正忙
  13. 足球比赛两强相遇概率
  14. 实用的数据可视化工具大集合
  15. java 文本提取_Java 提取PDF 文本内容
  16. 使用Scratch制作打弹球游戏-反弹球
  17. 常用国际贸易术语汇总
  18. MATLAB Appdesigner开发独立桌面App全流程(一):以打开串口功能为例介绍Appdesigner的基本使用
  19. 三元相分级统计地图-绘制-USDA soil textural triangle
  20. 金融之期货软件搭建,股票平台搭建,融资融券平台搭建

热门文章

  1. Java打印乘法口诀表(任何数)
  2. Altium Designer挖空开槽填坑之board cutout
  3. Altium Designer 18中的PCB Editor–Board Insight Modes
  4. 一文搞懂 Cocos Creator 3.0 坐标转换原理
  5. 智星云服务器之云主机使用教程简记
  6. 用OpenStack搭建简单的云平台并启动云主机
  7. 合并写(write combining)
  8. JpGrap引入以及中文乱码问题
  9. sdformatter格式化选项设置_使用SDFormatter怎么格式化内存卡-SDFormatter使用教程
  10. Python3寻找相同图片