Ajax上传包含文件的form表单,需用到FormData 对象
详见:FormData 对象的使用
以下是示例代码:
var formData = new FormData(); // FormData()注意大小写
formData.append('string', string); //模拟其他数据
formData.append('file', file); //模拟file文件
$.ajax({
url: url,
type: 'POST',
data: formData,
processData: false, //processData用于对data参数进行序列化处理,默认值是true。默认情况下发送的数据将被转换为对象,如果不希望把File转换,需要设置为false
contentType: false, //让Ajax不要设置请求头
catch: false, //不缓存
success: function(result, data) {
console.log(result);
console.log(data);
},
error: function(errMsg) {
console.log(errMsg);
}
})