js剪切板复制的表格自动识别

效果图如下:
在这里插入图片描述
把excel里的表格数据粘贴到框内,自动识别数据,这个例子比较简单,只是提供个思路

代码如下:

<!DOCTYPE html>
<html lang="en">

<head>
	<meta charset="UTF-8">
	<meta name="viewport" content="width=device-width, initial-scale=1.0">
	<meta http-equiv="X-UA-Compatible" content="ie=edge">
	<title>Document</title>
</head>

<body>
	<div id="box" contenteditable="true"
		style="width:600px;min-height:300px;text-align:justify ;margin:100px auto;border: 1px solid orange;">
	</div>
	<button "getValue()">获取值</button>
	<div id="tip" style="width:600px;min-height: 200px;margin: 20px auto;border:1px solid #ddd;overflow: scroll;"></div>
	<script src="https://code.jquery.com/jquery-3.1.1.min.js"></script>
	<script>
		document.querySelector('#box').addEventListener('paste', (e) => {

			e.preventDefault();
			e.stopPropagation();
			let paste = (e.clipboardData || window.clipboardData).getData('text/html');
			const selection = window.getSelection();
			if (!selection.rangeCount) return false;
			$('#box').html(paste);
		});
		var fontValue=['name','price','Code','num']
		function getValue(){
			var tableArr=$('#box tr')||[];
			var data=[];
			for( var i=0;i< tableArr.length;i++){
				var trtemp=tableArr[i];
				var obj={};
				var tdTemp=$(trtemp).find('td');
				for(var x=0;x< $(tdTemp).length;x++){
					//var removeSpace=$(tdTemp).eq(x).text().replace(/(^\s*)|(\s*$)/g,'')
					var removeSpace=$(tdTemp).eq(x).text().replace(/\s*/g,'')
					obj[fontValue[x]]=removeSpace
				}
				data.push(obj)
			}
			var str=JSON.stringify(data,undefined, 4);
			$('#tip').html('<pre>'+str+'<pre>');
		}
	</script>
</body>

</html>
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值