version 2.0 文件上传
文件上传示例
添加

支持PDF、PNG、JPG格式

添加

支持PDF、PNG、JPG格式

添加

支持PDF、PNG、JPG格式支持PDF、PNG、JPG格式支持PDF、PNG、JPG格式支持PDF、PNG、JPG格式支持PDF、PNG、JPG格式支持PDF、PNG、JPG格式支持PDF、PNG、JPG格式支持PDF、PNG、JPG格式支持PDF、PNG、JPG格式支持PDF、PNG、JPG格式支持PDF、PNG、JPG格式支持PDF、PNG、JPG格式

删除上传附件功能销毁实例
文件上传示例

支持PDF、PNG、JPG格式

预览图片

已上传图片

- +
- +
使用说明

设计说明

文件上传通过缩略图展示已上传文件,其中图片类生成对应图片缩略图(base64),其他类别,本框架提供了默认图片。

另外还补充了删除上传附件功能的方法destroy()方法,使用场景主要是动态生成附件上传按钮,删除按钮时,需调用删除上传附件功能的方法,以免动态生成内容过多,浪费内存。

开发规范

Dom结构:

<div class="form-group"> <label class="col-md-3"> <span class="text-star">*</span> <span class="text-title">文件上传 - 单文件</span> </label> <div class="col-md-6 form-file-group"> <input type="hidden" name="fileId" value="" id="fileId"> <div class="clearfix"> <div id="uploadBtn">添加</div> <p class="upload-tips">支持PDF、PNG、JPG格式</p> <div id="theList" class="uploader-list"></div> </div> </div> </div>

Dom参数说明:

1. (#fileId)隐藏input用来存放上传后,后台回传的文件信息。多文件通过字符串拼接,逗号分隔。回显时,需要拆分处理。value值示例:http://172.17.60.214\upload\goods\20180822\153491952686073124.jpg,http://172.17.60.214/upload/goods/20180920/1537428792410824716.png

2. (#uploadBtn)添加按钮,用于触发文件上传事件。

3. (#theList)文件上传后缩略图及文件信息的显示区,其中.item的自定义属性data-option中,会存放文件的相关信息,包括id,name,size,ext和type。生成Dom示例如下:

<div id="theList1" class="uploader-list"> <div id="WU_FILE_1" class="item" data-option='{"id":"WU_FILE_3","name":"wifi密码.png","size":4985,"ext":"png","type":"image/png"}'> <h4 class="info"> <i class="icon-file" style="background-image: url('')"></i> <span class="file-name">wifi密码.png</span> <div class="sub-detail"> <i class="icon-status icon-status-success state"></i> <i class="icon-status icon-status-delete"></i> <span class="file-size">4985B</span> </div> </h4> </div> <div id="WU_FILE_2" class="item" data-option='{"id":"WU_FILE_5","name":"body_img_0.png","size":4561,"ext":"png","type":"image/png"}'> <h4 class="info"> <i class="icon-file" style="background-image: url('')"></i> <span class="file-name">body_img_0.png</span> <div class="sub-detail"> <i class="icon-status icon-status-success state"></i> <i class="icon-status icon-status-delete"></i> <span class="file-size">4561B</span> </div> </h4> </div> </div>

JS及对应参数说明:

        var uploaderOption = {

            // 选完文件后,是否自动上传
            auto: true,

            // swf文件路径
            swf: '../../res/js/webuploader/Uploader.swf',

            // 文件接收服务端(后台提供的接口)
            server: '/api/1.0/upload',

            // 选择文件的按钮,单文件上传禁止多选操作
            pick: {id: '#uploadBtn', multiple: false},

            // 不压缩image, 默认如果是jpeg,文件上传前会压缩一把再上传!
            resize: false,

            threads: 1,

            // 文件大小限制
            fileSingleSizeLimit: 1024 * 1024 * 100,

            // 文件类型限制
            accept: {
                title: 'file',
                extensions: 'pdf,jpg,png'
            },
            duplicate: true,

            //自定义参数:默认单文件上传
            monofile:true
        };
        var domParams = {
            uploadBtnId: 'uploadBtn',   //上传文件按钮id
            listId: 'theList',          //显示的已上传文件列表id
            fileId: 'fileId',           //隐藏的input id
            fileSize: '选择的文件不能超过100M',             //文件大小限制的提示文本
            fileType: '只支持PDF、PNG、JPG格式'            //允许文件格式的提示文本
        };

         var uploader = unitUploader(uploaderOption, domParams);
                        
flex布局flex布局
flex布局flex布局flex布局flex布局flex布局flex布局flex布局flex布局flex布局flex布局flex布局flex布局flex布局flex布局flex布局flex布局flex布局flex布局flex布局flex布局flex布局flex布局flex布局flex布局flex布局flex布局flex布局flex布局flex布局flex布局flex布局flex布局flex布局flex布局flex布局flex布局flex布局flex布局flex布局flex布局flex布局flex布局flex布局flex布局flex布局flex布局flex布局flex布局flex布局flex布局flex布局flex布局flex布局flex布局flex布局flex布局flex布局flex布局flex布局flex布局flex布局flex布局flex布局flex布局flex布局flex布局flex布局flex布局flex布局flex布局flex布局flex布局flex布局flex布局flex布局flex布局flex布局flex布局flex布局flex布局flex布局flex布局flex布局flex布局flex布局