使用 XHR 提交表单数据
Submitting Formdata using XHR
抱歉,如果这已经在其他地方得到解答,但我似乎遇到了一个关于使用 FormData
对象上传文件的非常具体的问题。
HTML形式:
<form id="file-form" method="post">
<input type="file" id="file-input" multiple onchange="HandleFileInput(event); return false;"/>
</form>
JS回调:
HandleFileInput(event) {
var fd = new FormData();
var fileList = document.getElementById('file-input').files;
for (let i = 0; i < fileList.length; i++) {
fd.append(fileList[i].name, fileList[i]);
}
}
使用调试器我可以看到 fileList 确实充满了文件条目(多个),我可以通过在控制台中为它们建立索引来访问各个文件。但是,我似乎无法将文件附加到 FormData 对象。在 for 循环之后,fd 对象仍然是空的。帮忙?
好的,似乎一切都按预期附加到 fd 对象。我使用 fd 对象的 values()
函数检查了这个:
for (var value of fd.values()) {
console.log(value)
}
抱歉,如果这已经在其他地方得到解答,但我似乎遇到了一个关于使用 FormData
对象上传文件的非常具体的问题。
HTML形式:
<form id="file-form" method="post">
<input type="file" id="file-input" multiple onchange="HandleFileInput(event); return false;"/>
</form>
JS回调:
HandleFileInput(event) {
var fd = new FormData();
var fileList = document.getElementById('file-input').files;
for (let i = 0; i < fileList.length; i++) {
fd.append(fileList[i].name, fileList[i]);
}
}
使用调试器我可以看到 fileList 确实充满了文件条目(多个),我可以通过在控制台中为它们建立索引来访问各个文件。但是,我似乎无法将文件附加到 FormData 对象。在 for 循环之后,fd 对象仍然是空的。帮忙?
好的,似乎一切都按预期附加到 fd 对象。我使用 fd 对象的 values()
函数检查了这个:
for (var value of fd.values()) {
console.log(value)
}