精华内容
下载资源
问答
  • 前言:太特么难了,网上一堆大坑写的半拉柯基的,我是东拼西凑,连蒙带骗,可算是整出来了。...button class="layui-btn layui-btn-radius" id="uplod">数据导入</button> 下边就是重要的代码了,我知..

    前言:太特么难了,网上一堆大坑写的半拉柯基的,我是东拼西凑,连蒙带骗,可算是整出来了。佰度得内容都是大坑啊,有一个人写得又test8又test19的,也不写是啥玩意。为了避免这个文章被驳回,我忍住了一万句骂人的话语。看他们写那玩意憋一肚子气啊。

    、、先整个按钮,随便在哪,是个按钮就行。给按钮加个id = uplod

    <button class="layui-btn layui-btn-radius" id="uplod">数据导入</button>

    下边就是重要的代码了,我知道的基本都写了。有懂得留言吧

    //找到你的layui.use   里边加个upload
    layui.use(['table', 'layer', 'laydate','upload', 'jquery'], function () {
    
    
            //...不管其他代码
    
    
            //下边随便找个空位置
            $("#uplod").click(function () {
                //获取下边需要使用的对象
                var $ = layui.jquery
                    ,upload = layui.upload;
                var default_config = {
                    msg:"数据导入成功!"
                }
                // $.extend( default_config, config);
                var idRandom = "importData" + Math.ceil(Math.random()*10000) //模板的div的随机数id
                //创建模板(下边有个小四方框里边有个问好,不知道是啥,反正不影响,也没动他)
                var htmlContent = '<div class="layui-upload-drag" id="'+idRandom+'">';
                htmlContent += '<i class="layui-icon"></i>';
                htmlContent += '<p>点击选择文件,或将文件拖拽到此处</p>';
                htmlContent += '</div>';
                htmlContent += '<div style="text-align: center">';
                htmlContent += '<button id="test19" class="layui-btn">点击上传</button>';
                htmlContent += '</div>';
    
                layer.open({
                    type: 1
                    ,offset: "auto" //具体配置参考:http://www.layui.com/doc/modules/layer.html#offset
                    ,id: 'layer_importData' //防止重复弹出
                    ,title:'导入'
                    , headers: {"authorization": token}
                    ,content: htmlContent    //需要打开的模板
                    ,maxWidth:800
                    // ,btn: ['下载模板']   //这里可以加一个下载模板的按钮,我不需要,注释了。
                    ,btnAlign: 'c' //按钮居中
                    ,shade: 0 //不显示遮罩
                    ,yes: function(){//下载模板按钮提交
                        // var iframe = $("<iframe></iframe>");
                        // iframe.attr("src",default_config.downUrl);
                        // iframe.css("display","none");
                        // $("#"+idRandom).append(iframe);
                    }
                });
                form.render();//这个不知道嘎哈的,复制来的,也没实验去掉行不行。你们谁实验了请告诉我结果
                //拖拽上传
                upload.render({
                    elem: "#"+idRandom    //绑定上边定义的小弹窗
                    ,url: "../busineAssessment/uploadExcel"
                    ,accept: 'file'   //普通文件
                    , headers: {"authorization": token}  //我用的token,如果不是token验证的项目不用加这个
                    ,auto: false       //关闭自动上传(这个如果不写,文件拽进来直接走接口,不需要点按钮,想点按钮就写个这个拒绝自动上传)
                    ,bindAction: '#test19'   //上边选择拒绝自动上传了这个里就自己加个按钮,点击自动调用url接口
                    ,done: function(data){  //调用结束返回的data
                        if(data.code == 0){
                            layer.closeAll();//执行成功关闭弹窗
                            //
                            layer.msg(data.msg);
                        }else{
                            layer.msg(data.msg);
                        }
                    }
                });
                return false;
            });
    
    }

    //下边是后台代码

    //控制层,没啥用,就是接到这个file然后仍到service中

    @ApiOperation(value = "execl数据持久化")
        @PostMapping("busineAssessment/uploadExcel")
        @ResponseBody
        public DataResult uploadExcel(@RequestParam("file") MultipartFile file, HttpServletRequest request, HttpServletResponse response) {
            System.out.println("进来了");
            Map<String, Object> map = new HashMap<String, Object>();
            String aa = busineAssessmentService.uploadExcel(file, request, response);
            return DataResult.success(aa);
        }
    
    
    
    
    

    //service逻辑层

    @Override
        public String uploadExcel(MultipartFile file, HttpServletRequest request, HttpServletResponse response) {
            MultipartHttpServletRequest multipartRequest = (MultipartHttpServletRequest) request;
            if(file.isEmpty()){
                try {
                    throw new Exception("文件不存在!");
                } catch (Exception e) {
                    e.printStackTrace();
                }
            }
            InputStream in =null;
            try {
                in = file.getInputStream();
            } catch (IOException e) {
                e.printStackTrace();
            }
            List<List<Object>> listob = null;
            try {
                listob = new ExcelUtils().getBankListByExcel(in,file.getOriginalFilename());
            } catch (Exception e) {
                e.printStackTrace();
            }
    
            //该处可调用service相应方法进行数据保存到数据库中,现只对数据输出
            for (int i = 0; i < listob.size(); i++) {
                System.out.println(listob.get(i));
            }
            return "success";
        }

    ExcelUtils

    package com.company.project.common.utils;
    
    import org.apache.poi.hssf.usermodel.HSSFDateUtil;
    import org.apache.poi.hssf.usermodel.HSSFWorkbook;
    import org.apache.poi.ss.usermodel.Cell;
    import org.apache.poi.ss.usermodel.Row;
    import org.apache.poi.ss.usermodel.Sheet;
    import org.apache.poi.ss.usermodel.Workbook;
    import org.apache.poi.xssf.usermodel.XSSFWorkbook;
    
    import java.io.InputStream;
    import java.math.BigDecimal;
    import java.text.SimpleDateFormat;
    import java.util.ArrayList;
    import java.util.Date;
    import java.util.List;
    
    /**
     * Constant
     *
     * @author wenbin
     * @version V1.0
     * @date 2020年3月18日
     */
    public class ExcelUtils {
    
        private final static String excel2003L =".xls";    //2003- 版本的excel
        private final static String excel2007U =".xlsx";   //2007+ 版本的excel
    
        /**
         * 描述:获取IO流中的数据,组装成List<List<Object>>对象
         * @param in,fileName
         * @return
         * @throws
         */
        public  List<List<Object>> getBankListByExcel(InputStream in, String fileName) throws Exception {
            List<List<Object>> list = null;
    
            //创建Excel工作薄
            Workbook work = this.getWorkbook(in, fileName);
            if (null == work) {
                throw new Exception("创建Excel工作薄为空!");
            }
            Sheet sheet = null;  //页数
            Row row = null;  //行数
            Cell cell = null;  //列数
    
            list = new ArrayList<List<Object>>();
            //遍历Excel中所有的sheet
            for (int i = 0; i < work.getNumberOfSheets(); i++) {
                sheet = work.getSheetAt(i);
                if (sheet == null) {
                    continue;
                }
    
                //遍历当前sheet中的所有行
                for (int j = sheet.getFirstRowNum(); j <= sheet.getLastRowNum(); j++) {
                    row = sheet.getRow(j);
                    if (row == null || row.getFirstCellNum() == j) {
                        continue;
                    }
    
                    //遍历所有的列
                    List<Object> li = new ArrayList<Object>();
                    for (int y = row.getFirstCellNum(); y < row.getLastCellNum(); y++) {
                        cell = row.getCell(y);
                        li.add(this.getValue(cell));
                    }
                    list.add(li);
                }
            }
    
            return list;
        }
        /**
         * 描述:根据文件后缀,自适应上传文件的版本
         * @param inStr,fileName
         * @return
         * @throws Exception
         */
        public  Workbook getWorkbook(InputStream inStr,String fileName) throws Exception{
            Workbook wb = null;
            String fileType = fileName.substring(fileName.lastIndexOf("."));
            if(excel2003L.equals(fileType)){
                wb = new HSSFWorkbook(inStr);  //2003-
            }else if(excel2007U.equals(fileType)){
                wb = new XSSFWorkbook(inStr);  //2007+
            }else{
                throw new Exception("解析的文件格式有误!");
            }
            return wb;
        }
        /**
         * 描述:对表格中数值进行格式化
         * @param cell
         * @return
         */
        //解决excel类型问题,获得数值
        public  String getValue(Cell cell) {
            String value = "";
            if(null==cell){
                return value;
            }
            switch (cell.getCellType()) {
                //数值型
                case Cell.CELL_TYPE_NUMERIC:
                    if (HSSFDateUtil.isCellDateFormatted(cell)) {
                        //如果是date类型则 ,获取该cell的date值
                        Date date = HSSFDateUtil.getJavaDate(cell.getNumericCellValue());
                        SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd");
                        value = format.format(date);;
                    }else {// 纯数字
                        BigDecimal big=new BigDecimal(cell.getNumericCellValue());
                        value = big.toString();
                        //解决1234.0  去掉后面的.0
                        if(null!=value&&!"".equals(value.trim())){
                            String[] item = value.split("[.]");
                            if(1<item.length&&"0".equals(item[1])){
                                value=item[0];
                            }
                        }
                    }
                    break;
                //字符串类型
                case Cell.CELL_TYPE_STRING:
                    value = cell.getStringCellValue().toString();
                    break;
                // 公式类型
                case Cell.CELL_TYPE_FORMULA:
                    //读公式计算值
                    value = String.valueOf(cell.getNumericCellValue());
                    if (value.equals("NaN")) {// 如果获取的数据值为非法值,则转换为获取字符串
                        value = cell.getStringCellValue().toString();
                    }
                    break;
                // 布尔类型
                case Cell.CELL_TYPE_BOOLEAN:
                    value = " "+ cell.getBooleanCellValue();
                    break;
                default:
                    value = cell.getStringCellValue().toString();
            }
            if("null".endsWith(value.trim())){
                value="";
            }
            return value;
        }
    }
    

    //需要的依赖

    <!-- 读取excel -->
            <!--文件上传组件-->
            <dependency>
                <groupId>commons-fileupload</groupId>
                <artifactId>commons-fileupload</artifactId>
                <version>1.3.1</version>
            </dependency>
            <!--读取excel文件-->
            <dependency>
                <groupId>org.apache.poi</groupId>
                <artifactId>poi</artifactId>
                <version>3.17</version>
            </dependency>
            <dependency>
                <groupId>org.apache.poi</groupId>
                <artifactId>poi-ooxml</artifactId>
                <version>3.17</version>
            </dependency>

    结束语:太特么难了,干的这憋气

    展开全文
  • LayUI导入excel功能

    千次阅读 2020-11-27 15:04:27
    第一种导入 <div class="layui-form-block"> <input type="file" class="layui-btn layui-btn-primary" id="LAY-excel-import-excel" multiple="multiple"> </div> $(function () { // 监听...

    第一种导入

    <div class="layui-form-block">
    	<input type="file" class="layui-btn layui-btn-primary" id="LAY-excel-import-excel" multiple="multiple">
    </div>
    
    $(function () {
        // 监听上传文件的事件
        $('#LAY-excel-import-excel').change(function (e) {
          // 注意:这里直接引用 e.target.files 会导致 FileList 对象在读取之前变化,导致无法弹出文件
          var files = Object.values(e.target.files)
          uploadExcel(files)
          // 变更完清空,否则选择同一个文件不触发此事件
          e.target.value = ''
        })
      })
    })
    

    第二种导入

    <button type="button" class="layui-btn" id="LAY-excel-upload">
    <i class="layui-icon"></i>导入
    </button><input class="layui-upload-file" type="file" accept="undefined" name="file">
    
    //upload上传实例
      var uploadInst = upload.render({
        elem: '#LAY-excel-upload' //绑定元素
        , url: '/upload/' //上传接口(PS:这里不用传递整个 excel)
        , auto: false //选择文件后不自动上传
        , accept: 'file'
        , choose: function (obj) {// 选择文件回调
          var files = obj.pushFile()
          var fileArr = Object.values(files)// 注意这里的数据需要是数组,所以需要转换一下
    
          // 用完就清理掉,避免多次选中相同文件时出现问题
          for (var index in files) {
            if (files.hasOwnProperty(index)) {
              delete files[index]
            }
          }
          $('#LAY-excel-upload').next().val('');
    
          uploadExcel(fileArr) // 如果只需要最新选择的文件,可以这样写: uploadExcel([files.pop()])
        }
      });
    
    /**
     * 上传excel的处理函数,传入文件对象数组
     */
    function uploadExcel(files) {
      layui.use(['excel', 'layer'], function () {
        var excel = layui.excel
        var layer = layui.layer
        try {
          excel.importExcel(files, {
            // 读取数据的同时梳理数据
            fields: {
              'id': 'A'
              , 'username': 'B'
              , 'experience': 'C'
              , 'sex': 'D'
              , 'score': 'E'
              , 'city': 'F'
              , 'classify': 'G'
              , 'wealth': 'H'
              , 'sign': 'I'
            }
          }, function (data) {
            // 还可以再进行数据梳理
            
          })
        } catch (e) {
          layer.alert(e.message)
        }
      })
    }
    

    参考案例http://excel.wj2015.com/
    参考文档http://excel.wj2015.com/_book/

    展开全文
  • layui导入excel文件的方法是什么拉威导入超过文件的方法是什么,我们先来看看完成的效果图:(相关推荐:layui)具体步骤如下:首先:导入layui第三方插件js,地址:https://fly.layui.com/extend/excel/1、在页面中...

    layui导入excel文件的方法是什么拉威导入超过文件的方法是什么,

    efdf4e1fed03e97d53b934189d141a8a.png

    我们先来看看完成的效果图:

    (相关推荐:layui)

    be27406d4f82af9313a4f254c9bdd712.png

    具体步骤如下:

    首先:导入layui第三方插件js,地址:

    https://fly.layui.com/extend/excel/1、在页面中引入excel.js文件:

    ae021cdc372398a7d355b51a90f93095.png

    //引入超过

    layui.config({

    base: ‘layui_ext/’,

    }).扩展({

    excel: ‘excel ‘,

    });2、监听头工具栏的点击事件

    //监听头工具栏事件

    桌子。在(‘工具栏(Terminaconfig)’,函数(obj) {

    var layer=layui.layer

    //添加终端

    if(obj.event==’import’){

    layer.open({

    类型: 1,

    shade : false,

    面积:[‘ 350像素’,’ 260像素’],

    标题: ‘导入Excel ‘,

    内容:美元(‘ #ImportExcel ‘),

    cancel : function() {

    层。close();

    },

    成功:函数(layero,index) {

    ImportExcel();

    },

    });

    }

    //导入超过结束

    });

    //监听头工具栏事件结束3、导入xcel()方法:

    //导入方法

    函数ImportExcel(){

    var $=layui.jquery

    ,upload=layui.upload

    var uploadInst=upload.render({

    elem: ‘#importExcel ‘,

    /*method: ‘POST ‘,*/

    url:基本路径’超级用户/导入超级用户数据。操作,

    accept: ‘file ‘,//普通文件

    exts: ‘xls|excel|xlsx ‘,//导入表格

    auto: false,//选择文件后不自动上传

    :之前函数{(obj)

    层。load();//上传装货

    },

    选择:函数(obj) {//选择文件回调

    var files=obj。pushfile();

    var fileArr=Object.values(文件);//注意这里的数据需要是数组,所以需要转换一下

    //console.debug(fileArr)

    //用完就清理掉,避免多次选中相同文件时出现问题

    对于(文件中的var索引){

    if(文件。Hasownproperty(index)){

    删除文件[索引];

    }

    }

    uploadExcel(FileArr);//如果只需要最新选择的文件,可以这样写:uploadExcel([files.pop()])

    },

    错误: function(){

    setTimeout(函数(){

    layer.msg(‘上传失败!’, {

    图标: 1

    });

    //关闭所有弹出层

    层。close all();//疯狂模式,关闭所有层

    },1000);

    }

    });

    }4、上传Excel()方法:

    函数上传Excel(文件){

    尝试{

    var excel=layui.excel

    excel.importExcel(文件,{

    //读取数据的同时梳理数据

    字段: {

    tId’ : ‘A ‘,

    入口: ‘B ‘,

    状态: ‘C ‘,

    户主号码: ‘D ‘,

    帐户名: ‘东’,

    电话: ‘F ‘

    }

    },函数(数据){

    var arr=new Array();

    for(I=1;我数据[0].表1。长度;i ){

    var tt={

    cId :选择集中器,

    tId :数据[0].第1[i]页.tId,

    inport: data[0].Sheet1[i].在港口,

    state: data[0].Sheet1[i].州,

    家庭数字:数据[0].表格1[I]10 .家庭号码,

    帐户名:数据[0]。第1[I]页.帐户名称,

    phone: data[0].Sheet1[i].电话,

    };

    arr。push(TT);

    }

    $。ajax({

    async: false,

    url:基本路径’超级用户/导入超级用户数据。操作,

    type: ‘post ‘,

    dataType: ‘json ‘,

    内容类型: ‘应用/x-www-form-URL编码’,

    数据: {

    data : JSON.stringify(arr)

    },

    成功:函数(数据){

    if(data.success){

    层。msg(数据。消息);

    setTimeout(函数(){

    层。close all();//疯狂模式,关闭所有层

    },1000);

    //表格导入成功后,重载表格

    tableins。重新加载(‘ TestterminconfigReload ‘,{

    url :基本路径’超级用户/超级用户数据表。操作,

    第:页

    限制: 10,//最初每页多少条数据

    极限: [ 10,20,30 ]

    //每页可以选择多少条数据

    },

    其中: {

    cId :选择集中器,

    tId :选择终端

    },

    Parsedata:函数(RES) {//RES为原始返回数据

    返回{

    代码’ : 0,//解析接口状态

    Msg’: res.message,//解析提示文本

    Count’: res.total,//解析数据长度

    数据’ : res.data //解析数据列表

    };

    }

    },’ data ‘);

    }else{

    //表导入失败后上传文件

    Layer.alert(data.error ‘请重新上传’,{ icon : 2 });

    }

    },

    错误:函数(msg) {

    Layer.msg(‘请联系管理员!’);

    }

    });

    });

    } catch (e) {

    layer . alert(e . message);

    }

    }方法四是读取数据,整理数据。解析Excel数据,然后将数据发送到后端。后端解析数据并将其插入数据库。成功后,将“Excel导入成功”返回前端。Excel导入成功后,重新加载表格,表格中即可显示数据。以上是layui导入excel文件方法的详细内容。请多关注其他关于Lei.com PHP知识的相关文章!

    展开全文
  • layui导入excel表格文件

    千次阅读 2019-04-02 15:15:36
    沟通交流群: QQ群号: 555056599 github地址: ...功能演示地址: http://excel.wj2015.com /** * 需要引用的外部文件 */ <link rel="stylesheet" type="text/css" href="layui/css/layui.css">...
    沟通交流群:
    QQ群号: 555056599
    
    github地址:
    https://github.com/wangerzi/layui-excel
    
    功能演示地址:
    http://excel.wj2015.com
    
    /**
     * 需要引用的外部文件
     */
    <link rel="stylesheet" type="text/css" href="layui/css/layui.css">
    <script type="text/javascript" src="layui/layui.js"></script>
    <script type="text/javascript">
    	layui.config({
    		base: 'layui_exts/'
    	}).extend({
    		excel: 'excel'
    	});
    </script>
    <!-- IE需要把JS放在上边,否则onclick失效 -->
    
    /**
     * HTML5代码
     * 绑定input按钮
     */
    <div class="layui-form-item">
    	<div class="layui-form-label">导入操作</div>
    	<div class="layui-form-block">
    		<input type="file" class="layui-btn layui-btn-primary" id="LAY-excel-import-excel" multiple="multiple">
    	</div>
    </div>
    
    /**
     * JavaScript代码
     */
    layui.use(['jquery', 'layer', 'upload', 'excel', 'laytpl', 'element', 'code'], function(){
      var $ = layui.jquery;
      var layer = layui.layer;
      var upload = layui.upload;
      var excel = layui.excel;
      var laytpl = layui.laytpl;
      var element = layui.element;
       /**
        * 页面加载事件
        */
    	$(function(){
    	    // 监听上传文件的事件
    	    $('#LAY-excel-import-excel').change(function(e) {
    	      var files = e.target.files;
    	      uploadExcel(files);
    	    });
    	    // 文件拖拽
    	    $('body')[0].ondragover = function(e) {
    	      e.preventDefault();
    	    }
    	    $('body')[0].ondrop = function(e) {
    	      e.preventDefault();
    	      var files = e.dataTransfer.files;
    	      uploadExcel(files);
    	    }
    	  });
    	});
    
    	 /**
    	  * 上传excel的处理函数,传入文件对象数组
    	  * @param  {[type]} files [description]
    	  * @return {[type]}       [description]
    	  */
    	 function uploadExcel(files) {
    	   try {
    	     excel.importExcel(files, {
    	       // 读取数据的同时梳理数据
    	       fields: {
    	         'id': 'A'
    	         ,'username': 'B'
    	         ,'experience': 'C'
    	         ,'sex': 'D'
    	         ,'score': 'E'
    	         ,'city': 'F'
    	         ,'classify': 'G'
    	         ,'wealth': 'H'
    	         ,'sign': 'I'
    	       }
    	     }, function(data) {
    	       // 还可以再进行数据梳理
    		/*
    		   data = excel.filterImportData(data, {
    	         'id': 'A'
    	         ,'username': 'B'
    	         ,'experience': 'C'
    	         ,'sex': 'D'
    	         ,'score': 'E'
    	         ,'city': 'F'
    	         ,'classify': 'G'
    	         ,'wealth': 'H'
    	         ,'sign': 'I'
    	       });
    		*/
    	      // 如果不需要展示直接上传,可以再次 $.ajax() 将JSON数据通过 JSON.stringify() 处理后传递到后端即可
    	      $.ajax({
                  url: '/article/inputExcel'
                  , data:{data:data}
                  , dataType: 'json'
                  , success: function (res) {
                      if(res.code == 200){
                          layer.msg('导入成功',{icon:1,time:1000});
                      }
                  }
              })
              //展示表格文件转换成的json数据格式
    	      layer.open({
    	         title: '文件转换结果'
    	         ,area: ['799px', '399px']
    	         ,tipsMore: true
    	         ,content: laytpl($('#LAY-excel-export-ans').html()).render({data: data, files: files})
    	         ,success: function() {
    	           element.render('tab');
    	           layui.code({
    	           });
    	         }
    	       });
    	     });
    	   } catch (e) {
    	     layer.alert(e.message);
    	   }
    	 };
     });
    
    展开全文
  • Spring Boot+Layui 导入Excel文件

    千次阅读 2020-03-30 10:40:59
    } 3、页面 <button type="button" class="layui-btn layui-btn-primary" id="uploadExcel">批量导入</button> layui.use('upload', function() { var upload = layui.upload; upload.render({ elem: '#uploadExcel...
  • div class="layui-input-inline"> <!--我这个地方是动态获取下拉框中的值--> <select name="companyId" id="companyId" lay-filter="companyId" style="height: 36px;"> <option value="">...
  • SSM+Layui实现批量导入数据功能

    千次阅读 多人点赞 2019-05-04 16:26:28
    最近要实现批量导入功能,查看了相关资料,以及百度了相关内容,发现有点不是很全,特别是引入的依赖不全 话不多说,直接上代码开始: 1、pom.xml文件引入相关依赖 <!--文件上传依赖--> <!-- ...
  • layui筛选功能组件

    2021-05-07 14:11:01
    layui并没有自带筛选字段值的功能,只能支持隐藏列 但是,在layui的第三方扩展组件库中有一个组件可以完成数据筛选 layui-soul-table 它不仅支持数据筛选,还有拖拽导出及其他功能 下好组件包 在要使用的js 进行...
  • layui实现EXCEL文件导入功能

    千次阅读 2019-11-18 10:18:29
    layui实现EXCEL文件导入功能 前台设置导出按钮。 <a href="javascript:;" class="layui-btn" lay-event="uploadFile" style="font-size:15px;"><span><i class="layui-icon" >&#xe67c;<...
  • 设计思路:点击批量导入按钮后,打开选择文件弹出框(upload.html),选择文件后点击批量导入按钮完成批量导入功能。 前端页面: <script type="text/html" id="toolbarDemo"> <div class="layui-btn-...
  • layui xls导入导出功能

    2021-06-10 22:07:01
    layui插件Excel导入导出 layuiadmin框架、引入插件excel.js和excel.min.js,放入/layuiadmin/modules文件夹下 excel模板要放在static目录下: “/static/excel/area_template.xls”,放在templates目录下读取不到,...
  • 1、需求是列表里增加“批量导入功能按钮,要将固定模板的excel表格传给后台接口 2、使用layUI新增弹窗, 3、使用form表单形式上传文件(这里注意,如使用input的type="file",form表单的enctype需用multipart...
  • layui.use('upload', function() { var upload = layui.upload; upload.render({ elem: '#uploadExcel'...导入成功!', {icon: 1,time:2000,shade:0.2}); } } }); });

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 1,648
精华内容 659
关键字:

layui导入功能