我试图用ajax发布数据但是在控制台中我重复了类似的东西..未捕获的ReferenceError:文件未定义
这是我输入的按钮,用于上传数据:
<div id='file_browse_wrapper'>
<input class="iconos" type="file" name="File Upload" id='file_browse' accept=".csv" />
</div>
<label id="url-archivo"><b>Selecciona tu archivo...</b></label>
<button class="btn btn-success" id="carga-archivo">Subir</button>
这是我的jquery / ajax:
$("#carga-archivo").click(function () {
var fileUpload = document.getElementById("file_browse");
if (fileUpload .value != null) {
var uploadFile = new FormData();
var files = $("#file_browse").get(0).files;
// Add the uploaded file content to the form data collection
if (files.length > 0) {
uploadFile.append('file-'+i, file);
$.ajax({
url: "/2/delivery/client/massive",
contentType: false,
processData: false,
data: uploadFile,
type: 'POST',
success: function () {
alert("file upload successfuly");
}
});
}
}
});
但数据不是POST,我觉得缺少了
答案 0 :(得分:0)
您已创建名为files
的变量,但正在使用名为file
的变量。尝试更改代码的这一部分:
var file = $("#file_browse").get(0).files;
// Add the uploaded file content to the form data collection
if (file.length > 0) {
uploadFile.append('file-'+i, file);
$.ajax({
url: "/2/delivery/client/massive",
contentType: false,
processData: false,
data: uploadFile,
type: 'POST',
success: function () {
alert("file upload successfuly");
}
});
}
这只是将files
变量重命名为file
,并更改使用files
的另一个地方。