<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. R语言中知识点总结(一)

    source("http://bioconductor.org/biocLite.R") biocLite("GEOquery") library(Biobas ...

  2. 国外(英文)——WPF较好的奇葩问题解决网站

    https://stackoverflow.com/questions/6415908/c-sharp-wpf-datagrid-vertical-scroll

  3. 大数据量 与 UI交互时的处理 总结与心得

    [以下均在主线程中操作时]1.UI直接操作,数据量较大时,直接使用UI会非常慢2.数据驱动操作,数据量较大时,数据与UI的交互效率相比“1”提升明显 总结:但以上这两种操作  都会“较长时间”占用主线 ...

  4. 20170906xlVBA_GetEMailFromDocument

    Public Sub GetDataFromWord() AppSettings 'On Error GoTo ErrHandler Dim StartTime, UsedTime As Varian ...

  5. JIT编译器技术理解

    参考链接: https://blog.csdn.net/liaodehong/article/details/51605457 https://www.cnblogs.com/insistence/p ...

  6. 【转】XP系统远程桌面连接2012R2提示:远程计算机需要网络级别身份验证,而您的计算机不支持该验证

    一.背景 因对方客户的服务器是内网的,需要操作更新服务器的数据库表信息,因此远程对方客户办公司的电脑远程服务器:但是在远程桌面连接出现问题. 二.错误问题 错误问题:“远程计算机需要网络级别身份验证, ...

  7. hdu5992 kdt

    题意:n个旅馆,每个有花费,m个查询,查询在某个点在c花费范围内的距离最小的旅馆 题解:kdt,建成四维,坐标两维,花费一维,id一维,实际上建树只用前两维,正常的查询,如果满足条件在更新答案即可 / ...

  8. Centos7.3安装和配置jre1.8转

      在正式环境里 我们可以不安装jdk ,仅仅安装Java运行环境 jre即可: 第一步:下载jre 我们去oracle官方下载下jre http://www.oracle.com/technetwo ...

  9. java解析前端请求接口的全部入参

    第一种: public static String getRequestInput(HttpServletRequest request) { StringBuilder sb = new Strin ...

  10. c++ shared_ptr的使用

    shared_ptr.是c++为了提高指针安全性而添加的智能指针,方便了内存管理.功能非常强大,非常强大,非常强大(不单单是shared_ptr,配合week_ptr以及enable_share_fr ...