<form id="testform" method="post" >
<input type="text" id="name" name="name" />
<input type="text" name="age" />
<input type="text" name="hobby" />
<input type="file" id="image" name="image" />
<input id="yxrq" name="birthday" class="easyui-datebox" data-options="editable:false,width:200" />
</form>
<button id="tijiao" onclick="tijiao()">提交</button>
1,當僅僅想上傳文件到後臺
function tijiao(){
var file = $("#image")[0].files[0];
//打印file 爲對象
console.log(file);
var formObj = new FormData();
formObj.set('image', file);
$.ajax({
url:'test/test3',
data:formObj,
type: 'POST',
dataType:'json',
processData:false,
contentType:false,
success:function(data){
alert(data.Msg);
}
});
}
@RequestMapping("/test3")
public Map<String,Object> test3( @RequestParam("image") MultipartFile uploadFile)
2.上傳表單數據和文件
var uploadFile = new FormData($("#testform")[0]);
console.log(uploadFile);
$.ajax({
url:"test/test3",
type:"post",
data:uploadFile,
cache: false,
dataType:'json',
contentType: false, //不設置內容類型
processData: false, //不處理數據
success:function(data){
alert(data.Msg);
}
});
@RequestMapping("/test3")
public Map<String,Object> test3(Test test3, @RequestParam("image") MultipartFile uploadFile)//Test爲實體類
3.上傳多個表單數據,那麼以json形式上傳。
function tijiao(){
var file = $("#image")[0].files[0];
//打印file 爲對象
console.log(file);
var formObj = new FormData();
formObj.set('image', file);
var formStr = JSON.stringify($('#testform').serializeJSON());
formObj.set('test3', formStr);
console.log(formObj);
$.ajax({
url:"test/test3",
type:"post",
data:formObj,
cache: false,
dataType:'json',
contentType: false, //不設置內容類型
processData: false, //不處理數據
success:function(data){
alert(data.Msg);
}
});
}
@RequestMapping("/test3")
public Map<String,Object> test3(String test3, @RequestParam("image") MultipartFile uploadFile)
當input是easyUI的easyui-filebox 文件對象數據 用var file = $("#image")[0].files[0]得不到,
用name屬性得到 var file = $("input[name='zp']")[0].files[0];