使用xlsx.js完成Excel批量数据导入

使用xlsx.js完成Excel批量数据导入

直接上代码

需要引入的 xlsx.js 文件地址 https://gitcode.net/mirrors/SheetJS/sheetjs/-/blob/master/xlsx.js

<!DOCTYPE html>
<html>
	<head>
		<meta charset="utf-8">
		<title></title>
		<style>
			.btn_color{
				color: blue;
			}
		</style>
	</head>
	<!-- 此处需要引入的js文件 -->
	<script src="xlsx.js"></script>
	<body>
		<input type="file" id="file" style="display: none;"/>
		<button class="btn_color" onclick="importBatch()">批量导入</button>
		
		<script type="text/javascript">
			function importBatch(){
				document.getElementById('file').click();
			}
			
			// 读取本地excel文件
			function readWorkbookFromLocalFile(file, callback) {
				var reader = new FileReader();
				reader.onload = function(e) {
					var data = e.target.result;
					var workbook = XLSX.read(data, {type: 'binary'});
					if(callback) callback(workbook);
				};
				reader.readAsBinaryString(file);
			}	
			
			
			function readWorkbook(workbook) {
					var sheetNames = workbook.SheetNames; // 工作表名称集合
					var worksheet = workbook.Sheets[sheetNames[0]]; // 这里我们只读取第一张sheet
					var arr = XLSX.utils.sheet_to_json(worksheet);
					
					// 输出下表格总的内容
					console.log(arr);
				}
				
			// 增加上传文件监听事件
				document.getElementById('file').addEventListener('change', function(e) {
					var files = e.target.files;
					if (files.length === 0) {
						return;
					}
					var f = files[0];
					if (!/\.xls$/g.test(f.name)) {
						alert('仅支持读取xlsx格式或者xls');
						return;
					}
					readWorkbookFromLocalFile(f, function(workbook) {
						readWorkbook(workbook);
					});
				});
		</script>
	</body>
	
</html>
  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值