介绍
这篇文章主要介绍了layui中怎样导入excel文件,具有一定借鉴价值,需要的朋友可以参考下。希望大家阅读完这篇文章后大有收获。下面让小编带着大家一起了解一下。
我们先来看看完成的效果图:
具体步骤如下:
首先:导入layui第三方插件js,地址:
https://fly.layui.com/extend/excel/
1,在页面中引入excel.js文件:
//引入excel layui.config ({ 基础:& # 39;layui_ext/& # 39; .extend ({}) 擅长:& # 39;excel # 39; });
2,监听头工具栏的点击事件
//监听头工具栏事件 table.on(& # 39;工具栏(terminalConfig) & # 39;,函数(obj) { var层=layui.layer;//添加终端 如果(obj。事件==& # 39;进口# 39;){ layer.open ({ 类型:1、 阴影:假的, 面积:[& # 39;350 px # 39;, & # 39; 260 px # 39;), 标题:& # 39;导入excel # 39;, 内容:$ (“# ImportExcel"), 取消:函数(){ layer.close (); }, 成功:函数(layero、索引){ ImportExcel (); }, }); }//导入Excel结束 });//监听头工具栏事件结束
3, ImportExcel()方法:
//导入方法 函数ImportExcel () { var=layui.jquery美元 、上传=layui.upload; var uploadInst=upload.render ({ elem: & # 39; # importExcel& # 39;/*方法:& # 39;文章# 39;*/url: basePath + & # 39; PowerUser/importPowerUserData.action& # 39; 接受:& # 39;文件# 39;//普通文件 ext: & # 39; xls excel | | xlsx& # 39;,//导入表格 汽车:假的,//选择文件后不自动上传 :函数(obj) { layer.load ();//上传装载 }, 选择:函数(obj){//选择文件回调 var=obj.pushFile文件(); var fileArr=Object.values(文件);//注意这里的数据需要是数组,所以需要转换一下//console.debug (fileArr)//用完就清理掉,避免多次选中相同文件时出现问题 (var索引的文件){ 如果(files.hasOwnProperty(指数)){ 删除文件(指数); } } uploadExcel (fileArr);//如果只需要最新选择的文件,可以这样写:uploadExcel ([files.pop ())) }, 错误:函数(){ setTimeout(函数(){ layer.msg(“上传失败!“,{ 图标:1 });//关闭所有弹出层 layer.closeAll ();//疯狂模式,关闭所有层 }, 1000); } }); }
4, uploadExcel()方法:
函数uploadExcel(文件){ 尝试{ var excel=layui.excel; excel。importExcel(文件,{//读取数据的同时梳理数据 领域:{ & # 39;tid # 39;:& # 39;一个# 39; & # 39;尺寸# 39;:& # 39;b # 39; & # 39;国家# 39;:& # 39;c # 39; & # 39;householdNumber& # 39;:& # 39;d # 39; & # 39;帐号名称# 39;:& # 39;e # 39; & # 39;电话# 39;:& # 39;f # 39; } }、功能(数据){ var arr=new Array (); (i=1;我& lt;数据[0].Sheet1.length;我+ +){ var tt={ cId: selectConcentrator, tId:数据[0].Sheet1[我].tId, 尺寸:数据[0].Sheet1[我].inport, 数据状态:[0].Sheet1[我].state, householdNumber:数据[0].Sheet1[我].householdNumber, 帐号名称:数据[0].Sheet1[我].accountName, 电话:数据[0].Sheet1[我].phone, }; arr.push (tt); } . ajax({美元 异步:假的, url: basePath + & # 39; PowerUser/importPowerUserData.action& # 39; 类型:& # 39;文章# 39; 数据类型:“json" contentType:“应用程序/x-www-form-urlencoded" 数据:{ 数据:JSON.stringify (arr) }, 成功:功能(数据){ 如果(data.success) { layer.msg (data.message); setTimeout(函数(){ layer.closeAll ();//疯狂模式,关闭所有层 }, 1000);//表格导入成功后,重载表格 tableIns.reload (& # 39; testTerminalConfigReload& # 39;, { url: basePath + & # 39; PowerUser/PowerUserDataTable.action& # 39; 页面:{//限制:10日初始每页几条数据 限制(10年,20年,30)://可以选择的每页几条数据 }, 地点:{ cId: selectConcentrator, tId: selectTerminal }, parseData:函数(res) {//res即为原始返回的数据 返回{ “code": 0,//解析接口状态 “msg": res.message,//解析提示文本 “count": res.total,//解析数据长度 “data": res.data//解析数据列表 }; } },& # 39;数据# 39;); 其他}{//表格导入失败后,重载文件上传 layer.alert (data.error +“请重新上传“,{图标:2}); } }, 错误:函数(味精){ layer.msg(& # 39;请联系管理员! ! ! & # 39;); } }); }); }捕捉(e) { layer.alert (e.message); } }layui中怎样导入excel文件