javascript:我想记住用户输入到input:files中的FileList



我需要一个input:file来上传文件,但用户多次添加文件。最后,我需要上传用户选择的所有文件。

但是我遇到了问题,为什么我尝试设置文件列表。如何调整文件列表对象的大小并输入另一个新文件?

如果我正确理解您的问题,您希望通过单击按钮多次选择文件

。 次数。

为此,您可以执行以下操作:

  1. 为输入文件添加更改事件
  2. 维护一个哈希表(简单地说,一个对象)来保存所有选定的文件。
  3. 在 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>

您也可以在当前输入文件之上创建另一个输入文件,当用户单击它时,将打开另一个输入文件,前一个输入文件将存储以前的文件。

最新更新