admin 发布时间:2016-07-25 分类:分享 阅读:9625次 添加评论
前段代码需要与其他接口进行交互,ajax上传配置图片文件。代码用的是HTML5的FormData对象,FormData对象可以添加键值对来模拟我们用到的表单控件,将值转化为二进制传递。
HTML表单代码:
<form id="formTimeLine" class="form-horizontal no-margin form-border"> <div class="form-group"> <label class="col-md-2 control-label">发送的图片</label> <div class="col-md-8"> <input name="file-img" class="file-img" multiple accept=".jpg,.png" type="file"> </div> </div> </form>
上传的JavaScript代码:
var data = new FormData($("#formTimeLine")[0]);
$.ajax({
type: 'POST',
url: url,
dataType: 'json',
cache: false,
processData: false, //需要正确设置此项
contentType: false,
enctype: 'multipart/form-data', //需要正确设置此项
data: data,
success: function (data) {
//返回成功
},
error: function (XMLHttpRequest, textStatus, errorThrown) {
alert('error:');
}
});我们还可以不借助 HTML 表单,直接向 FormData 对象中添加一个 File 对象,来上传文件。
var oForm = new FormData();
oForm.append("file-img", myimg);该特性可能有部分浏览器不支持。
关键字词: jQuery上传文件jQuery上传文件
发表评论:
◎欢迎您的参与讨论。