<div class="modal-dialog">
<div class="modal-content">
<div class="modal-header">
<button type="button" class="close" data-dismiss="modal"
aria-hidden="true">&times;</button>
<h4 class="modal-title" id="myModalLabel">用户头像上传</h4>
</div>
<div class="modal-body">
<section class="panel">
<div class="panel-body">
<form role="form" id="avatarFileForm" enctype="multipart/form-data">
<div class="form-group">
<div class="col-md-12">
<div class="fileupload fileupload-new"
data-provides="fileupload">
<div class="fileupload-new thumbnail"
style="width: 200px; height: 150px;">
<img src="data:images/default.jpg" alt="默认头像"
th:src="@{images/default.jpg}" />
</div>
<div class="fileupload-preview fileupload-exists thumbnail"
style="max-width: 200px; max-height: 150px; line-height: 20px;"></div>
<div>
<span class="btn btn-default btn-file"> <span
class="fileupload-new"><i class="fa fa-paper-clip"></i>选择图片</span>
<span class="fileupload-exists"><i class="fa fa-undo"></i>
更换</span> <input class="default" id="userAvatar" name="file"
type="file" />
</span> <a href="#" class="btn btn-danger fileupload-exists"
data-dismiss="fileupload"><i class="fa fa-trash"></i> 移除</a>
</div>
</div>
<br /> <span class="label label-danger ">NOTE!</span> <span>
1、缩略图仅支持最新的Firefox,Chrome,Opera,Safari和Internet Explorer 10 <br />
2、仅支持 .jpg、.jpeg或.png的图片格式!
</span>
</div>
</div> </form>
</div>
</section> </div>
<div class="modal-footer">
<button id="reset" type="button" class="btn btn-default"
data-dismiss="modal">关闭</button> <!-- data-dismiss="modal" 点击完模态框消失 -->
<button id="saveButton" type="button" class="btn btn-primary">提交</button>
</div>
</div>
</div>
<!--file upload-->
<link rel="stylesheet" type="text/css"
href="css/bootstrap-fileupload.min.css" />
<!--file upload-->
<script type="text/javascript" src="js/bootstrap-fileupload.min.js"></script>
<script th:inline="javascript">
/*<![CDATA[*/
var userId = [[${userId}]];
$('#avatarFileForm').bootstrapValidator(
{
message : 'This value is not valid',
feedbackIcons : {
valid : 'glyphicon glyphicon-ok',
invalid : 'glyphicon glyphicon-remove',
validating : 'glyphicon glyphicon-refresh'
},
fields : {
file: {
validators: {
notEmpty: {
message: '上传图片不能为空'
},
file: {
extension: 'png,jpg,jpeg',
type: 'image/png,image/jpg,image/jpeg',
message: '图片格式仅支持png,jpg,jpeg'
}
}
}
} }); $('#saveButton').click(
function() {
var flag = $('#avatarFileForm').bootstrapValidator('validate').data('bootstrapValidator').isValid();
//校验
if(flag){
$.ajax({
url: 'avatar/user-upload-avatar.json?id='+userId,
type: "POST",
data: new FormData($("#avatarFileForm")[0]),
enctype: 'multipart/form-data',
processData: false,
contentType: false,
cache: false,
success: function (result) {
console.log(result);
var msg = result.ajaxResultJson.msg;
if(result.ajaxResultJson.success){
//成功时退出对话框
$('#Modal').modal('hide');
}else{ }
layer.msg(msg);
},
error: function (result) {
var msg = result.ajaxResultJson.msg;
layer.msg(msg); }
}); }else{
layer.msg("请按格式要求上传!");
} }); /*]]>*/
</script>

文件上传FormData的更多相关文章

  1. ajax文件上传-FormData()

    HTML: <form action=""> <input type="file" id="file1" name=&qu ...

  2. vue使用formData进行文件上传

    本文为博主原创,未经允许不得转载 1.vue页面 <ux-form ref="formRef" layout="vertical"> <ux- ...

  3. 基于uploadify.js实现多文件上传和上传进度条的显示

    uploadify是JQuery的一个插件,主要实现文件的异步上传功能,可以自定义文件大小限制.文件类型.是否自动上传等属性,可以显示上传的进度条.官网地址是http://www.uploadify. ...

  4. 【JS】ajax 实现无刷新文件上传

    一.摘要 最近在做个东西,需要实现页面无刷新文件上传,目前看到的方法有两种 1) 通过隐藏iframe 实现页面无刷新,适用于不关心上传结果 <form target="hiddenF ...

  5. python 全栈开发,Day86(上传文件,上传头像,CBV,python读写Excel,虚拟环境virtualenv)

    一.上传文件 上传一个图片 使用input type="file",来上传一个文件.注意:form表单必须添加属性enctype="multipart/form-data ...

  6. 文件上传去除"Content-Disposition: form-data"

    某个项目中为了统一处理文件上传业务,创建了一个FileUpload Handle,由于上传客户端用到各种技术,当时为了方便断点续传,就直接接收请求中的文件内容(可能是分片),所以处理的不是规范的htt ...

  7. 利用Formdata实现form提交文件上传不跳转页面

    作者:幻月九十链接:https://www.zhihu.com/question/19631256/answer/119911045来源:知乎著作权归作者所有,转载请联系作者获得授权. $('form ...

  8. Multipart/form-data POST文件上传详解

    Multipart/form-data POST文件上传详解 理论 简单的HTTP POST 大家通过HTTP向服务器发送POST请求提交数据,都是通过form表单提交的,代码如下: <form ...

  9. 表单同时有中文字段和文件上传,加上enctype="multipart/form-data"后导致的中文乱码问题

    因为一个表单需要同时上传字段和文件,所以加上enctype="multipart/form-data",但是上传后的中文字段变成了乱码. 把enctype="multip ...

随机推荐

  1. English trip V1 - 10.Family Ties 家庭关系 Teacher:Emily Key: Possessive s (所有格 s)

    In this lesson you will learn to talk about people in a family. 课上内容(Lesson) What are you Spring Fes ...

  2. JS过渡和变形效果演示(举例:鼠标滑过图片放大) --JS案例

    1.代码: <!DOCTYPE html><html><head> <meta charset="utf-8"> <title ...

  3. codeforces587a//Duff and Weight Lifting// Codeforces Round #326 (Div. 1)

    题意:一数列an,如果存在一个k,有2^(ai)+2^(aj)+......=2^k成立,那么一次能拿走ai,aj这些全部.问最少拿的次数. 太简单. 乱码 //#pragma comment(lin ...

  4. prune研究记录(二)

    发现之前自己写的程序里面的一个bug,就是关于再函数中改变全局变量的事情,有两个函数,在一个函数中定义了一个全局变量并进行了赋值操作,但是在后面的函数中没有申明全局变量,所以后面这个函数本来是想要改变 ...

  5. Docker 镜像上传到docker hub仓库

    1 先创建docker hub 帐号 ,并创建仓库 https://hub.docker.com/ 首先你需要一个docker hub 帐号,记住username,password,email .后面 ...

  6. Selenium-WebDriverApi接口详解

    浏览器操作 # 刷新 driver.refresh() # 前进 driver.forward() # 后退 driver.back() 获取标签元素 # 通过ID定位目标元素 driver.find ...

  7. k8s问题收集

    问题 解决 failed: rpc error: code = Unknown desc = NetworkPlugin cni failed to set up pod "*****&qu ...

  8. 将本地项目推送至gitee或者github

    将本地项目推送到Git github上的版本和本地版本冲突的解决方法 初始化项目时,在git中新建项目. 在Github中创建了一个Repository之后,会给你列出如何将自己本地项目Push到Gi ...

  9. Hive QL的操作

    一.数据定义DDL操作 创建表: --create table为创建一个指定名字的表 create(external) table table_name --external关键字可以让用户创建一个外 ...

  10. JavaScript中 null 的 typeof是object

    JavaScript中  null 的 typeof是object