我需要一个input:file来上传文件,但用户多次添加文件。最后,我需要上传用户选择的所有文件。
但是我遇到了问题,为什么我尝试设置文件列表。如何调整文件列表对象的大小并输入另一个新文件?
如果我正确理解您的问题,您希望通过单击按钮多次选择文件
。 次数。为此,您可以执行以下操作:
- 为输入文件添加更改事件
- 维护一个哈希表(简单地说,一个对象)来保存所有选定的文件。
- 在 onchange 事件处理程序中填充哈希表。(注:视情况而定根据您的要求,您可能需要更改为此创建"密钥"的方式哈希表)。
<input type="file" multiple="multiple" id="fname" onchange="pp()" />
<script type="text/javascript">
var x={};
function pp()
{
var k = document.getElementById("fname");
for (var i = 0; i < k.files.length; i++){
x[k.files[i].name]=k.files[i];
}
console.log(x);
}
</script>
您也可以在当前输入文件之上创建另一个输入文件,当用户单击它时,将打开另一个输入文件,前一个输入文件将存储以前的文件。