excel表格粘贴到网页的功能
背景
项目有表格功能,表格过大,一个一个填,过于麻烦。
需要从excel表复制的功能。
过程
监听paste事件,根据事件提供的clipboardData属性,获取数据。
根据换行符 \n 和tab符 \t ,处理数据,获得二维数组。
代码
1 this.$refs.commonSizeTable.addEventListener('paste', function (evt) { 2 // 阻止事件传播 3 let event = event || window.event; 4 if(event.preventDefault) 5 event.preventDefault() 6 if(event.returnValue) 7 event.returnValue=false 8 9 // 获取数据 10 let clipdata = evt.clipboardData || window.clipboardData 11 if(!clipdata) { 12 return; 13 } 14 const data = clipdata.getData('text/plain') 15 const tableArr = data.split('\n').map(ele => { 16 return ele.split('\t') 17 }) 18 19 // tableArr, 二维数组 20 })
云在青天水在瓶。