在不提交表单的情况下将文件DATA发送到ajax



我已经编写了以下代码来使用ajax上传图像,而不使用表单标记。我的基本要求是,点击文件输入后,图像的路径应该保存在SESSION&订单确认后,会话将被销毁,图像将保存到文件夹中。

<input id="file-input" name="file-input[]" multiple accept=".png, .PNG, .jpg, .JPG, .jpeg, .JPEG, .PDF, .pdf" type="file" />
$(document).ready(function() {
$('input[type=file]').change(function() {
var formData = new FormData();
var files = this.files;
for (var i = 0; i < this.files.length; i++) {
formData.append('file', $('#file-input')[0].files[0]);
}
$.ajax({
type: "POST",
url: "ajax.php?type=uploadImgSession", // 
data: formData,
processData: false,
contentType: false,
success: function(msg) {
alert(msg);
},
error: function() {
alert("failure");
}
});
})
});

我的问题是formData每次都是空白的。我该如何纠正?

当您尝试使用Ajax上传文件时,可以使用jquery - $(form).ajaxSubmit()Ref链接

最新更新