jexcel_将excel数据导入到页面
jexcel_将excel数据导入到页面<1>
还需解决的课题:下载jszip.js和xlsx.js
<%@ Page Language="C#" AutoEventWireup="true" CodeFile="有效代码_将excel数据导入到网页.aspx.cs" Inherits="Default2" %> <!DOCTYPE html> <html xmlns="http://www.w3.org/1999/xhtml"> <head runat="server"> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <title></title> <%--CSS--%> <link href="/web_page_ssc/css/jexcel.css" rel="stylesheet" /> <link href="/web_page_ssc/css/jsuites.css" rel="stylesheet" /> <%--JS--%> <%--Jexcel包--%> <script src="../web_page_ssc/js/jexcel.js"></script> <script src="../web_page_ssc/js/jsuites.js"></script> <script src="https://cdnjs.cloudflare.com/ajax/libs/xlsx/0.13.5/jszip.js"></script> <script src="https://bossanova.uk/jspreadsheet/v3/xlsx.js"></script> </head> <body> <form id="form1" runat="server"> <div id="spreadsheet1"></div> </form> </body> <script>
// ???疑问,为何不显示修改后的excel jexcel.fromSpreadsheet('/temp/2023-05-05-092829.xlsx', function (result) { if (!result.length) { console.error('jspreadsheet: Something went wrong.'); } else { if (result.length == 1) { jspreadsheet(document.getElementById('spreadsheet1'), result[0]); } else { jexcel.createTabs(document.getElementById('spreadsheet1'), result); } } }); </script> </html>
jexcel_将excel数据导入到页面<2> OK
1 <html xmlns="http://www.w3.org/1999/xhtml"> 2 <head runat="server"> 3 <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> 4 5 <title>上传文件</title> 6 7 <%--将EXCEL数据JSON化--%> 8 <script type="text/javascript" src='../web_page_ssc/js/xlsx.core.min.js'></script> 9 <%--CSS--%> 10 <link href="/web_page_ssc/css/jexcel.css" rel="stylesheet" /> 11 <link href="/web_page_ssc/css/jsuites.css" rel="stylesheet" /> 12 <%--<link href="/web_page_ssc/css/jexcel.datatables.css" rel="stylesheet"/>--%> 13 14 <%--JS--%> 15 <script src="../web_page_ssc/js/jquery.min.js"></script> 16 <%--Jexcel包--%> 17 <script src="../web_page_ssc/js/jexcel.js"></script> 18 <script src="../web_page_ssc/js/jsuites.js"></script> 19 20 <style> 21 .lqwvje-btn { 22 display: inline-block; 23 height: 38px; 24 line-height: 38px; 25 padding: 0 18px; 26 background-color: #009688; 27 color: #fff; 28 white-space: nowrap; 29 text-align: center; 30 font-size: 14px; 31 border: none; 32 border-radius: 2px; 33 cursor: pointer; 34 } 35 </style> 36 </head> 37 <body> 38 <form id="form1" runat="server"> 39 <div> 40 <label id="realBtn" class="lqwvje-btn"> 41 <input type="file" id="testFile" hidden="hidden" /> 42 上传文件 43 </label> 44 </div> 45 46 <div id="spreadsheet2"></div> 47 48 </form> 49 50 <script type="text/javascript"> 51 52 //首先监听input框的变动,选中一个新的文件会触发change事件 53 document.querySelector("#testFile").addEventListener("change", function () { 54 //获取到选中的文件 55 var file = document.querySelector("#testFile").files[0]; 56 57 //判断文件大小 58 //if (file.size > 1024 * 1024) { 59 // alert('当前文件大小:' + Math.floor(file.size / 1024) + 'KB,上传文件不能大于1024KB'); 60 // return false; 61 //} 62 63 //判断文件类型 64 var type = file.name.split('.'); 65 if (type[type.length - 1] !== 'xlsx' && type[type.length - 1] !== 'xls') { 66 alert('只能选择excel文件导入'); 67 return false; 68 } 69 const reader = new FileReader(); 70 reader.readAsBinaryString(file); 71 reader.onload = function (e) { 72 const data1 = e.target.result; 73 const zzexcel = window.XLS.read(data1, { 74 type: 'binary' 75 }); 76 const result = []; 77 for (let i = 0; i < zzexcel.SheetNames.length; i++) { 78 const newData = window.XLS.utils.sheet_to_json(zzexcel.Sheets[zzexcel.SheetNames[i]]); 79 result.push(...newData) 80 } 81 82 var data2 = JSON.stringify(result) //用变量v_myJson接收JSON数据,JSON.stringify(result)将对象变为字符串 83 var myJSON = JSON.parse(data2); //JSON.parse()将字符串变为对象 84 85 //console.log(myJSON); //F12的控制台中看取出的数据 86 //alert(myJSON); //弹窗中看取出的数据 87 88 //alert(JSON.stringify(result)); 89 //for (var i = 0; i < result.length; i++) { 90 // console.log(JSON.stringify(result[i])); //一条一条输出数据(对应EXCEL中一行数据) 91 //} 92 93 94 jspreadsheet(document.getElementById('spreadsheet2'), { 95 //装入数据 96 data: myJSON, 97 //设置列属性 98 columns: [ 99 { type: 'text', width: 30 }, 100 { type: 'text', width: 81 }, 101 { type: 'text', width: 82 }, 102 { type: 'text', width: 83 }, 103 { type: 'text', width: 84 }, 104 { type: 'text', width: 85 }, 105 { type: 'text', width: 86 }, 106 { type: 'text', width: 87 }, 107 { type: 'text', width: 88 }, 108 ] 109 }); 110 } 111 }); 112 113 114 </script> 115 </body> 116 </html>
浙公网安备 33010602011771号