当我尝试在选择后上传文件而不将其分配给数组时,它工作正常,但是当将文件对象分配为数组的元素时,$ _ FILES变为空
HTML
<input type='file' name='image' class='image'>
脚本
var img = $('.image').prop('files')[0];
var ajax_data=['product','price',img];
var postData = new FormData();
postData.append('data',ajax_data);
$.ajax({
type: "POST",
processData: false,
contentType: false,
url: base_url + "/admin/create_bill",
data:postData,
success: function (data) {
alert('data has been submitted')
}
});
}
});
注意: 如果使用JSON.stringify(ajax_data),则所有数组元素都成功传递给服务器,只有文件对象为空 虽然我不使用JSON.stringify()$ _FILES变为空
简单地说,我想传递一个包含文件对象和纯字符串数据的数组
答案 0 :(得分:0)
您可以POST
FormData
指向服务器,包括必要的数据。如果需要上传数组,则可以将File
对象转换为data URL
字符串,将数组转换为JSON
和POST
JSON
字符串到服务器。