传统的form表单通对提交来上传文件,但是页面必须要刷新才可以。使用FormData对象通过ajax上传文件便可以避免刷新的异步上传。eg:
代码块
<form name="form1" enctype="multipart/form-data">
<input type="file" id="file" name="file" style="margin-left:10px;margin-top:20px;">
<input type="button" id="btnRead" value="导入" style="width:100px;">
</form>
$("#importBtn").click(function(){
var formData=new FormData();
var files=document.getElementByIdx_x_x_x("file").files;
var file=files[0];
if(file==undefined){
$.messager.alert("提示","请选择文件");
}else{
formData.append("myfile",file);
$.ajax({
url:contextPath+'/momo/fc.do',
type:'post',
dataType:'json',
data:formData,
cache:false,
processData:false, //告诉Jquery不要处理发送的数据
contentType:fals, //告诉Jquery不要去理contenet-type请求头
success:function(data){
}
})
}
});
参见:https://developer.mozilla.org/zh-CN/docs/Web/Guide/Using_FormData_Objects
参见:http://yunzhu.iteye.com/blog/2177923