<input
type="file"
id="fileElem"
multiple
accept="image/*"
style="display:none"
onchange="handleFiles(this.files)">
<a href="#" id="fileSelect">Select some files</a>
<div id="fileList">
<p>No files selected!</p>
</div>
当我选择了 5 个文件时:如何动态删除其中一些文件?
我知道如何清除所有文件 How can I clear an HTML file input with JavaScript?
最佳答案
$("#fileElem")[0].files
是一个只读数组。
不过,您可以通过将这些文件推送到单独的数组中来解决此问题。然后,您可以使用该整理的文件列表执行任何您想要的操作。如果目标是将它们上传到服务器,您可以使用 FileReader
API。
下面是一种完全避免修改 FileList 的方法。步骤:
- 添加普通文件输入更改事件监听器
- 循环访问更改事件中的每个文件,过滤所需的验证
- 将有效文件推送到单独的数组中
- 使用
FileReader
API本地读取文件 - 向服务器提交有效的、已处理的文件
关于javascript - 如何从输入类型="file"多个中删除一、两个文件?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38790718/