我想使用html5 formData和jquery ajax来执行ajax文件上传(单个文件),但这不起作用。下面是我的js代码
//I tried this but return Cannot read property '0' of undefined
var file = $folderID.find('.add-file').files[0];
//I also tried this no error return, no file uploaded, no data inserted to db.
var file = $folderID.find('.add-file')[0].files[0];
var formData = new FormData();
formData.append("file", file);
var tag = $folderID.find('.hidden-tag').val();
$.ajax({
type: 'POST',
contentType:false,
processData:false,
url: baseUrl + 'folder/post',
data: {'file':formData ,'tag':tag},
error: function (request, status, error) {
alert(request.responseText);
}
});
注意:php文件在不使用ajax的情况下运行良好。
更新
标头返回302未找到并请求有效负载[object] [object]
答案 0 :(得分:1)
已修复,我将所有jquery .val()移动到formdata。
实施例
formData.append("file", file);
formData.append("tag", tag);