Bootstrap文件上传组件:Bootstrap fileinput

一、使用前准备

1、Bootstrap File Input 源码下载地址:https://github.com/kartik-v/bootstrap-fileinput/
2、Bootstrap File Input API地址:http://plugins.krajee.com/file-input

二、使用方法

1、导入依赖的js和css文件:

<link rel="stylesheet" href="css/bootstrap.min.css" />
<link rel="stylesheet" href="css/fileinput.min.css" />
<script type="text/javascript" src="js/jquery-3.2.1.js" ></script>
<script type="text/javascript" src="js/bootstrap.js" ></script>
<script type="text/javascript" src="js/fileinput.js" ></script>
<script type="text/javascript" src="js/zh.js" ></script>
<script type="text/javascript" src="js/my.js" ></script>

2、建立一个文件输入区

<form>
    <div class="form-group">
        <h3>Bootstrap File Input Demo1</h3>
    </div>

    <input name="uploadFile"  type="file" id="uploadFile" multiple class="file-loading" />
</form>

3、编写my.js文件,初始化文件上传组件

$(function() {
    //初始化fileinput
    var fileInput = new FileInput();
    fileInput.Init("uploadFile", "http://127.0.0.1/testDemo/fileupload/upload.action");
});

//初始化fileinput
var FileInput = function() {
    var oFile = new Object();

    //初始化fileinput控件(第一次初始化)
    oFile.Init = function(ctrlName, uploadUrl) {
        var control = $('#' + ctrlName);

        //初始化上传控件的样式
        control.fileinput({
            language: 'zh', //设置语言
            uploadUrl: 'http://127.0.0.1/testDemo/fileupload/upload.action', //上传的地址
            allowedFileExtensions: ['jpg', 'png', 'gif'], //接收的文件后缀
            uploadAsync: true, //默认异步上传

            showUpload: false, //是否显示上传按钮
            showRemove: true, //显示移除按钮
            showCaption: true, //是否显示标题

            dropZoneEnabled: true, //是否显示拖拽区域

            //minImageWidth: 50, //图片的最小宽度
            //minImageHeight: 50,//图片的最小高度
            //maxImageWidth: 1000,//图片的最大宽度
            //maxImageHeight: 1000,//图片的最大高度
            //maxFileSize:0,//单位为kb,如果为0表示不限制文件大小
            //minFileCount: 0,
            maxFileCount: 10, //表示允许同时上传的最大文件个数
            enctype: 'multipart/form-data',

            browseClass: "btn btn-primary", //按钮样式: btn-default、btn-primary、btn-danger、btn-info、btn-warning        
            previewFileIcon: "<i class='glyphicon glyphicon-king'></i>",

        });

        //文件上传完成之后发生的事件
        $("#uploadFile").on("fileuploaded", function(event, data, previewId, index) {

        });
    }
    return oFile;   //这里必须返回oFile对象,否则FileInput组件初始化不成功
};

三、效果图

1、初始化界面:

这里写图片描述

2、可以实现多文件上传:

这里写图片描述

3、点击某个文件,可以实现全屏预览:

这里写图片描述

四、Options介绍

属性名属性类型描述说明默认值
languageString多语言设置,使用时需提前引入\locales文件夹下对应的语言文件,中文zh,引入语言文件必须放在fileinput.js之后‘en’
showCaptionBoolean是否显示被选文件的简介true
showBrowseBoolean是否显示浏览按钮true
showPreviewBoolean是否显示预览区域true
showUploadBoolean是否显示上传按钮true
showCancelBoolean是否显示取消按钮true
showCloseBoolean是否显示关闭按钮true
showUploadedThumbsBoolean是否显示缩略图true
autoReplaceBoolean是否自动替换当前图片,设置为true时,再次选择文件,会将当前的文件替换掉。false
deleteUrlString删除图片时的请求路径
deleteExtraDataObject删除图片时额外传入的参数{}
allowedFileTypesObject接收的文件后缀,如[‘jpg’, ‘gif’, ‘png’],不填将不限制上传文件后缀类型null
uploadUrlString上传文件URL,即后台处理URLnull
uploadAsyncboolean是否为异步上传true
uploadExtraData上传文件时额外传递的参数设置{}
minImageWidthString图片的最小宽度null
minImageHeightString图片的最小高度null
maxImageWidthString图片的最大宽度null
maxImageHeightString图片的最大高度null
minFileSizenumber单位为kb,上传文件的最小大小值0
maxFileSizenumber单位为kb,如果为0表示不限制文件大小0
inFileCountnumber表示同时最小上传的文件个数0
maxFileCountnumber表示允许同时上传的最大文件个数0
previewFileTypeString预览文件类型,内置[‘image’, ‘html’, ‘text’, ‘video’, ‘audio’, ‘flash’, ‘object’,‘other‘]等格式‘image’
elCaptionTextString设置标题栏提示信息null
dropZoneEnabledboolean是否显示拖拽区域true
dropZoneTitleClassString拖拽区域类属性设置‘file-drop-zone-title’

五、Method介绍

方法名描述用法
fileerror异步上传错误结果处理$(‘#uploadfile’).on(‘fileerror’, function(event, data, msg) {});
fileuploaded异步上传成功结果处理$(“#uploadfile”).on(“fileuploaded”, function (event, data, previewId, index) {})
filebatchuploaderror同步上传错误结果处理$(‘#uploadfile’).on(‘filebatchuploaderror’, function(event, data, msg) {});
filebatchuploadsuccess同步上传成功结果处理$(‘#uploadfile’).on(‘filepreupload’, function(event, data, previewId, index) {});
filebatchselected选择文件后处理事件$(“#fileinput”).on(“filebatchselected”, function(event, files) {});
upload文件上传方法$(“#fileinput”).fileinput(“upload”);
fileuploaded上传成功后处理方法$(“#fileinput”).on(“fileuploaded”, function(event, data, previewId, index) {});
filereset
fileclear点击浏览框右上角X 清空文件前响应事件$(“#fileinput”).on(“fileclear”,function(event, data, msg){});
filecleared点击浏览框右上角X 清空文件后响应事件$(“#fileinput”).on(“filecleared”,function(event, data, msg){});
fileimageuploaded在预览框中图片已经完全加载完毕后回调的事件

六、源码下载

  • 0
    点赞
  • 12
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值