自己在这之前一直使用下列方法提交表单数据
$.ajax({
type:"POST",
dataType:"html",
url:"/admin/User_save",
data:$('#fm').serialize(),
success:function(result){
if(result.status==200){
alert("保存成功!");
}else{
alert("保存失败!");
}
}
})
当提交文件数据时遇到数据提交失败问题,后来网上看了一些博客才知道这样是不能提交的,所以在网上找到了下述方法:
var fm=new FormData($("#fm")[0]);
$.ajax({
url:"/admin/User_save",
type:"POST",
dataType:"html",
data:fm,
async: false,
cache: false,
contentType: false,
processData: false,
success:function(result){
if(result.status==200){
alert("保存成功!");
}else{
alert("保存失败!");
}
}
}) ;
此处使用了HTML中FormData的对象。
使用FormData创建一个要上传表单的对象,然后使用ajax进行传递,其中属性克参考http://www.w3school.com.cn/jquery/ajax_ajax.asp。
亲测有效。