下载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,并且刷新当前页的效果


 

Bootstrap FileInput.js + springmvc uploadFile的更多相关文章

  1. Bootstrap fileinput.js,最好用的文件上传组件

    本篇介绍如何使用bootstrap fileinput.js(最好用的文件上传组件)来进行图片的展示,上传,包括springMVC后端文件保存. 一.demo   二.插件引入 <link ty ...

  2. BootStrap fileinput.js文件上传组件实例代码

    1.首先我们下载好fileinput插件引入插件 ? 1 2 3 <span style="font-size:14px;"><link type="t ...

  3. ***Bootstrap FileInput插件的使用经验汇总

    插件下载地址: https://github.com/kartik-v/bootstrap-fileinput/ 官方DEMO查看: http://plugins.krajee.com/file-ba ...

  4. Spring Boot+BootStrap fileInput 多图片上传

    一.依赖文件 <link rel="stylesheet" type="text/css" th:href="@{/js/bootstrap/c ...

  5. bootstrap+fileinput插件实现可预览上传照片功能

    实际项目中运用: 功能:实现上传图片,更改上传图片,移除图片的功能 <!DOCTYPE html> <html> <head> <meta charset=& ...

  6. JS组件系列——Bootstrap文件上传组件:bootstrap fileinput

    前言:之前的三篇介绍了下bootstrap table的一些常见用法,发现博主对这种扁平化的风格有点着迷了.前两天做一个excel导入的功能,前端使用原始的input type='file'这种标签, ...

  7. JS文件上传神器bootstrap fileinput详解

    Bootstrap FileInput插件功能如此强大,完全没有理由不去使用,但是国内很少能找到本插件完整的使用方法,于是本人去其官网翻译了一下英文说明文档放在这里供英文不好的同学勉强查阅.另外附上一 ...

  8. bootstrap fileinput +springmvc图片上传-krajee

    引入的文件 <link href="https://cdnjs.cloudflare.com/ajax/libs/bootstrap-fileinput/4.4.9/css/filei ...

  9. bootstrap插件fileinput.js 出现出现$("#xxxx").fileinput({}); 不生效的情况解决

    如果出现$("#xxxx").fileinput({}); 不生效的情况请将fileinput.js中最后几行注释掉: /* $(document).ready(function ...

随机推荐

  1. 记一次Mysql占用内存过高的优化过程

    一.环境说明: 操作系统:CentOS 6.5 x86_64 数据库:Mysql 5.6.22 服务器:阿里云VPS,32G Mem,0 swap 二.问题情况: 1.某日发现公司线上系统的Mysql ...

  2. 17. final 关键字

    1.flnal修饰成员变量   1)定义: 如果一个变量不想被修改,那么就用final修饰 2)语法 public static final double PI=3.14; 3)注意 1. 被fina ...

  3. Redis探索之路(七):Redis高级使用特性

    一:安全性 设置客户端连接后进行任何其他指定前需要使用的密码. 因为Redis的速度非常之快,一台比较好的服务器下,一个外部的用户可以在1s内进行15万次的密码尝试连接,这就意味着你需要指定非常强大的 ...

  4. python从字符串中提取数字_filter

    my_str = '123and456' number = filter(str.isdigit, my_str ) # number = 123456 使用正则表达式: >>> i ...

  5. PHP ftp_rename() 函数

    定义和用法 ftp_rename() 函数重命名 FTP 服务器上的文件或目录. 如果成功,该函数返回 TRUE.如果失败,则返回 FALSE. 语法 ftp_rename(ftp_connectio ...

  6. bzoj1001题解

    [解题思路] 显然,这题的答案是这个网格图的最小割.根据最大流-最小割定理,我们可以用网络流算法来求其最小割,时间复杂度最小为O(V2√E). 特殊的,这个网格图是一个平面图,于是可以根据平面图最小割 ...

  7. 模拟+算贡献——cf1195D

    比赛的时候没看到模数,用java大数在写,最后看到的时候已经慌了.. 把贡献算清楚就可以 下面是贡献的推导 有五位数 abcde * 10个 有两位数 fg * 3 个 那么这两种数组成的情况就是 a ...

  8. dfs套异或的包含性——cf986C好

    很好的题,想了半天,官方题解的解法更好 这种异或问题的包含性在北邮的校赛里就出现过,需要认真学习一下 /* y和所有合法的x合并,如果没有剪枝,那么复杂度爆炸总共要判(2^n*2^n) 可以考虑如下优 ...

  9. 下面是一段delphi代码,你在c# 中引入api 即可

    procedure TForm1.Button1Click(Sender: TObject);var i:HWND; cs:CREATESTRUCT;begin// i := FindWindowEx ...

  10. tarjan强连通分量 (模板)

    #include<iostream> #include<cstdio> using namespace std; const int MAXN = 10005; struct ...