当我尝试在选择后上传文件而不将其分配给数组时它可以正常工作但是当将文件对象指定为数组元素时$ _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变空
简单来说,我想传递一个包含文件对象和纯字符串数据的数组
你可以POST
FormData
对象到服务器包括必要的数据。如果要求是上传数组,您可以将File
对象转换为data URL
字符串,将数组转换为JSON
,将POST
字符串转换为JSON
字符串到服务器。