我想创建一个例程,以查找预定数量的文件,这些文件将始终在同一位置找到,并且始终具有相同的文件名。是否有可能找到这些文件,然后将其上传到Web服务器,而无需用户的干预?
理想情况下,我希望用户仅单击一次按钮,然后它将在本地找到这些文件,然后将其上传到Web服务器。最初,我将使用一种表单,并让用户单击每个文件的“搜索文件”窗口,但是我目前需要同时上传20个小文件,因此该方法将非常耗时。
有任何指示或想法吗?
最佳答案
用户应在input type="file"
元素处的每个用户操作中从用户文件系统中选择用户文件。用户选择的文件应该可以在FileList
事件内的onchange
对象处访问。
如果所有文件都保存在同一目录中,并且浏览器支持directory
属性,则用户应能够上传用户选择的文件夹。
Chrome,Chrome设置了webkitdirectory
属性后允许文件夹上传; firefox当前不允许文件夹上传,尽管当在Firefox上设置multiple
属性设置allow_dirs
属性时,用户可以在单个文件对话框中上传多个文件。
也可以看看
document.querySelector("input").onchange = function() {
console.log(this.files)
}
<input type="file" directory="directory" allow_dirs="allow_dirs" webkitdirectory="webkitdirectory" />