【发布时间】:2013-04-12 19:33:26
【问题描述】:
我正在使用 ajax 提交包含数组、文本字段和文件的多部分表单。
我将每个 VAR 附加到主数据中
var attachments = document.getElementById('files');
var data= new FormData();
for (i=0; i< attachments.files.length; i++){
data.append('file', attachments.files[i]);
console.log(attachments.files[i]);
data.append ('headline', headline);
data.append ('article', article);
data.append ('arr', arr);
data.append ('tag', tag);
然后我使用 ajax 函数将其发送到 PHP 文件以存储在 sql DB 中。
$.ajax({
type: "post",
url: 'php/submittionform.php',
cache: false,
processData: false,
contentType: false,
data: data,
success: function(request) {$('#box').html(request); }
})
但是在 PHP 端,arr 变量,它是一个数组,显示为一个字符串。
当我不使用 ajax 作为表单数据发送它,而是使用简单的$.POST 选项时,我确实将它作为 PHP 端的一个数组,但我也无法发送文件。
有什么解决办法吗?
【问题讨论】:
标签: javascript ajax arrays form-data