ajax上传二进制文件

作者:じ☆ve宝贝

发布时间:2016-07-27T10:01:26

html(一定要引入jquery.js)

<form action="" id="form" method="post" enctype="multipart/form-data">
<P id="localImg">本地图片:<input id="upimg" onchange="ajaxFileUpload()" type="file"><span>系统支持的图片格式为:gif,jpg,jpeg,png</span></P>
</form>

js部分

function ajaxFileUpload(obj,src) {
	var imgData = new FormData();
	var imgFile = $('#upimg')[0].files[0];
	if (!isEmpty(imgFile)) {
		imgData.append('files', imgFile);
	}
	var type = "localmedia";  // 其他参数
	if (!isEmpty(type)) {
		imgData.append('type', type);
	}
$.ajax({
		url: '${baseUrl}/files',
		type: "POST",
		data: imgData,
		enctype: 'multipart/form-data',
		processData: false,
		contentType: false,
		cache: false,
		headers:  {
			'X-Token':token
		},
		success: function (data){
			alert('成功');
		}
	})
}

注意,在含有这个对象的form表单中一定要加入enctype="multipart/form-data"