纯js 导出excel

本文介绍如何使用纯JS结合Export2Excel.js和Blob.js库实现数据导出为Excel的功能,支持分批导出大量数据,确保每个批次不超过50000条记录。文章详细展示了如何设置请求参数,处理响应数据,并调用导出函数。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

纯js 导出excel
需引入Export2Excel.js 和Blob.js:

<script src="static/js/exportExcel/Export2Excel.js"> </script>
<script src="static/js/exportExcel/Blob.js"></script>

下载地址:Export2Excel.js 和Blob.js 下载

     $.ajax({
			type : "post",
			url : "ss/dataReport/getExportDataJs",
			data : {
				"timeRange": $("#timeRange").val()
			},
			cache : false,
			success : function(data, status) {
				var tHeader = ["账号", "客户","业务区","统计维度","下单量"];
                var filterVal = ["client", "clientName","area","dimension","orderCount"];
				//每次导出excel包含50000条数据
				//data.bills 是ajax 查询的记录数 list<bill>
				
                if((data.bills).length<=50000){
	                var data = formatJsonMsg(filterVal, data.bills);
	                export_json_to_excel(tHeader, data, "客户订单统计数据");
                }else{
                	//向上取整数 循环
                	var ce= Math.ceil((data.bills).length/50000);
                	for(var t=0;t<ce;t++){
                		var param = [];
                		for(var da=0;da<50000;da++){
						    //最后一次循环可能不到50000条
                			if(null!=(data.bills)[0]&&"undefined"!=(data.bills)[0]){
								param.push((data.bills)[0]);
								(data.bills).splice(0,1);
	                		}
                		}
                		var data1 = formatJsonMsg(filterVal, param);
		                export_json_to_excel(tHeader, data1, "客户订单统计数据");
                	}
                }
			},error : function() {
			},complete : function() {
			}
	}); 
	function formatJsonMsg(filterVal, jsonData){
		return jsonData.map(v => filterVal.map(j => v[j]))
	}		
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值