Ajax 提交form方式可以將form表單序列化 然后將數據通過data提交至后台,例如:
$.ajax({
url : "http://localhost:8080/",
type : "POST",
data : $( '#postForm').serialize(),
success : function(data) {
},
error : function(data) {
}
});
解決辦法:使用 FormData。這里使用jquery 最好使用2.0版本之后 之前應該不支持。例如:
<form id="form">
<P class="p5"><span><i>*</i>商戶證書:</span>
<input type='text' name='apiclientType' id='textfield' class='w_txt' >
<input type='button' class='w_btn' value='上傳證書' />
<input type="file" name="fileField" class="w_file" id="fileField" size="28" onchange="document.getElementById('textfield').value=this.value" />
</P>
</form>
var formData = new FormData(document.getElementById("form"));//表單id
$.ajax({
url: '${ctx}/wmManage/saveWeixinConfig.do' ,
type: 'POST',
data: formData,
async: false,
cache: false,
contentType: false,
processData: false,
success: function (result) {
}
});
附上后台數據接收:
@RequestMapping("/saveWeixinConfig") @ResponseBody
public ResultMsg saveWeixinConfig(@RequestParam(value = "fileField",required = false)MultipartFile fileField) throws IOException {
return "";
}
