使用 bootstrap-fileinput-js 进行文件上传

使用 bootstrap-fileinput-js 进行文件上传

上传文件同时想上传表单数据?

可以通过初始化配置来实现,具体在代码里的 uploadExtraData 中体现。

$("#imgFile").fileinput({
        showUpload:false,
        'theme': 'explorer-fas',
        'uploadUrl': prefix + '/edit',
        uploadAsync: false,
        maxFileCount: 1,
        enctype:'multipart/form-data',
        uploadExtraData: function () { // 在这里返回随文件一起上传的表单数据
            var data={
                liHuiId:$("#liHuiId").val(),
                name:$("#name").val(),
                total:$("#total").val(),
                description:$("#description").val(),
                probability:$("#probability").val(),
                status:$("#status").val(),
                beforeImgFile:$("#beforeImgFile").val(),
                extractNum:$("#extractNum").val()
            }
            return data;
        }
    }).on('filebatchuploadsuccess',function (event,data,previewId,index) {	// 同步上传成功之后回调
        $.operate.successCallback({
            code:0,
            msg:'操作成功'
        });
    });

    function submitHandler() {
        if ($.validate.form()) {
            //$.operate.save(prefix + "/add", $('#form-user-add').serialize());
            $("#imgFile").fileinput("upload");
        }

    }

input:

<input type="file" class="form-control-file" id="imgFile" name="imgFile" placeholder="选择图片" accept="image/jpeg">

需要:

<div th:fragment="bootstrap-fileinput-css">
    <link th:href="@{/ajax/libs/bootstrap-fileinput/fileinput.min.css}" rel="stylesheet"/>
</div>
<div th:fragment="bootstrap-fileinput-js">
    <script th:src="@{/ajax/libs/bootstrap-fileinput/fileinput.min.js}"></script>
</div>

效果:

posted @ 2020-12-02 15:01  zolmk  阅读(484)  评论(0编辑  收藏  举报