js生成excel表格并下载

<button id="" type="button" class="u-btn normal  importBtn" >
<i class="fa fa-plus"></i> 导出</button>
$(".importBtn").on('click', function() {
			var tableData = [];
			$.ajax({
			    type: 'get',
			    url: 'json/table.json', //请求数据的地址
			    dataType: "json", //返回数据形式为json
			    success: function(param) {
					console.log(param.data.result)
			       tableData = param.data.result;
			       	downLoadExcel(tableData, '巡检报告')
			    },
			    error: function(errorMsg) {
			        //请求失败时执行该函数
			        alert("请求数据失败!");
			        
			    }
			});    
		})
		function downLoadExcel(data, fileName){
		    //定义表头
		    let str = '任务时间,停靠点名称,检测点名称,设备名称,设备类型,任务执行状态,结果\n';
		    //增加\t为了不让表格显示科学计数法或者其他格式
		    for(let i = 0 ; i < data.length ; i++ ){
		        for(let item in data[i]){
		             str+=`${data[i][item] + '\t'},`;          
		        }
		        str+='\n';
		    }
		    //encodeURIComponent解决中文乱码
		    let uri = 'data:text/csv;charset=utf-8,\ufeff' + encodeURIComponent(str);
		    //通过创建a标签实现
		    let link = document.createElement("a");
		    link.href = uri;
		    //对下载的文件命名
		   link.download = `${fileName || '表格数据'}.xls`;
		    document.body.appendChild(link);
		    link.click();
		    document.body.removeChild(link);
		}

 

table.json 

{
	"data":{
		"result":[
			{
				"date":"2021-5-27 19:34",
				"stop_name":"L1电源列头柜",
				"check_name":"新检测点",
				"device_name":"电源列头柜12路",
				"device_type":"指示灯",
				"status":"已完成",
				"result":"2.000无异常"
			}
				
		]
	}
}

 

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 4
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值