Bootstrap FileInput.js + springmvc uploadFile


下載FileInput.js

    

    http://plugins.krajee.com/file-input/demo

    https://github.com/kartik-v/bootstrap-fileinput

 

頁面代碼

添加FileInput JS/CSS

<form enctype="multipart/form-data" id="uploadForm">

    <div id="uploadFileDiv" hidden="true" style="width: 60%;">

        <input id="pdFile" name="file" type="file">

        <div id="fileError" class="help-block"></div>

        <br />

    </div>

</form>

添加JS

    $("#pdFile").fileinput({

        showPreview : false,

        allowedFileExtensions : [ "zip", "bar", "bpmn", "bpmn20.xml" ], 限制文件類型

        elErrorContainer : "#fileError",

        browseClass : "btn btn-success",

        browseLabel : "查找文件",

        browseIcon : '<i class="glyphicon glyphicon-search"></i>',

        removeClass : "btn btn-danger",

        removeLabel : "刪除",

        removeIcon : '<i class="glyphicon glyphicon-trash"></i>',

        uploadClass : "btn btn-info",

        uploadLabel : "部署",

        uploadIcon : '<i class="glyphicon glyphicon-upload"></i>',

    });

 

    $("#uploadForm").submit(function(event) {

        var formData = new FormData(this); 這里用的是this,如果是Form的話需要Form[0]

        event.preventDefault(); 阻止當前提交事件,自行實現,否則會跳轉

        var grid = $('[data-role="pdGrid"]');

        $.ajax({

            url : contextPath + '/activiti/pd/upload.koala',

            type : 'POST',

            data : formData,

            contentType : false, 這兩個參數需要被定義,否則報錯

            processData : false,

            success : function(data) {

                if (data.result == 'success') {

                    grid.message({

                        type : 'success',

                        content : '部署成功'

                    });

                    $("#uploadFileDiv").slideToggle("slow");

                    grid.grid('refresh');

                } else {

                    grid.message({

                        type : 'error',

                        content : data.result

                    });

                }

            },

            error : function() {

                grid.message({

                    type : 'error',

                    content : '部署失敗'

                });

            }

        });

    });

 

后台代碼

    @ResponseBody

    @RequestMapping("/upload")

    public Map<String, Object> uploadFile(@RequestParam MultipartFile file)

    {

        Map<String, Object> dataMap = Maps.newHashMap();

        String fileName = file.getOriginalFilename();

        try

        {

            InputStream fileInputStream = file.getInputStream();

XXXXXXXXXXXXXX

        } catch (Exception e)

        {

            dataMap.put("result", "部署流程時發生錯誤");

            e.printStackTrace();

        }

        dataMap.put("result", "success");

        return dataMap;

    }

 

Spring.xml

<bean id="multipartResolver" class="org.springframework.web.multipart.commons.CommonsMultipartResolver" />

 

運行效果

 

 

 

點擊【部署】,實現無刷新提交form,並且刷新當前頁的效果

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM