当前位置:首页 » 文件管理 » 上传图片原型

上传图片原型

发布时间: 2023-07-15 13:22:23

㈠ 如何在前端用js进行多图片上传

    产品提了一个需求,要求在一个html中实现多行多图片上传,原型图如下:

    2.1 :html

        html页面由前端实现,此处增加<ul><li></li></ul>是为了配合图片单击放大图片功能的实现

        <ul  id="ul_other">

              <li><input type="file" id="file_other" class="file_input" onchange="add_file_image('other')"></li>

        </ul>

    2.2 :js

        var imgSrc_other=[];

        var imgFile_other=[];

        function add_file_image(id) {

            var fileList =document.getElementById("file_"+id).files;// js 获取文件对象

            if (verificationFile(fileList[0])){

                for(var i =0;i

                    var imgSrcI =getObjectURL(fileList[i]);

                        if (id=="other"){

                            imgSrc_other.push(imgSrcI);

                            if(fileList[i].size/1024 >100) { //大于100kb,进行压缩上传

                                 fileResizetoFile(fileList[i],0.6,function(res){

                                  imgFile_other.push(res);

                                })

                            }else{

                                imgFile_other.push(res);

                        }

                    }

                    addNewContent(id);

                }

        }

    //新增图片

    function addNewContent(obj) {

        //删除原先

        $("#ul_"+obj).html("");

        //判断循环新增

        var  text="";

        if (obj=="other"){

           for(var a =0;a < imgSrc_examReportCard.length;a++) {

            text +='<li><input type="file" id="file_other" class="file_input" onchange="add_file_image('other')"></li>';

           }

        }else{

            console.log('脏数据');

        }

        var oldBox ="<li><div class=\"filediv\"><span>+</span>\n" +

        "<input type=\"file\" id=\"file_"+obj+"\"  class=\"file_input\" onchange=\"add_file_image('"+obj+"')\">\n" +

        "</div></li>";

        $("#ul_"+obj).html( text+localText);

    }

    使用formData上传

    var form =document.getElementById("form_addArchive");//表单id

    var formData =new FormData(form);

    $.each(imgFile_other,function(i, file){

        formData.append('imgFileOther', file);

    });

$.ajax({

    url:url,

    type:'POST',

    async:true,

    cache:false,

    contentType:false,

    processData:false,

    dataType:'json',

    data:formData,

    xhrFields:{

        withCredentials:true

    },

    success:function(data) {

     }

  },

  error:function(XMLHttpRequest, textStatus, errorThrown) {

    }

})

后台使用@RequestParam(value ="imgFileOther", required=false) List<MultipartFile> imgFileOther, 接受

//获取图片url以便显示       

//文件格式验证

//图片压缩

热点内容
火车头密码指纹锁多少钱 发布:2025-09-18 23:16:55 浏览:129
雪佛兰最高配置长什么样 发布:2025-09-18 23:16:54 浏览:163
网络通话源码 发布:2025-09-18 23:07:23 浏览:82
asp如何购买服务器 发布:2025-09-18 22:46:24 浏览:666
网页加密代码 发布:2025-09-18 21:56:12 浏览:168
安卓targz解压 发布:2025-09-18 21:45:58 浏览:803
怎么设置手机屏幕密码怎么设置 发布:2025-09-18 21:44:18 浏览:820
直线插补算法 发布:2025-09-18 21:22:49 浏览:657
矩阵内的算法 发布:2025-09-18 20:55:07 浏览:574
android网络优化 发布:2025-09-18 20:53:19 浏览:220