我希望能够让用户上传包含其中所有文件和文件夹的文件夹,并仅使用浏览器将层次结构保留到我的网络应用程序中。
我搜索过但没找到如何做到这一点。每个人都说这是一个浏览器问题,我相信它是因为这样做没有浏览器标准。
我找到并玩过很多上传文件的javascript实现。当我将文件夹拖到它们上面时,我可以获得所有文件的列表,但文件夹和层次结构都消失了。如果我使用打开对话框的文件来查找文件,则不允许选择文件夹。
那么Dropbox是如何做到的?
我可以将整个文件夹拖到Chrome或Safari(在我的Mac上)上,这两个文件夹都会上传文件夹和文件,并在Dropbox中保留层次结构。
没有人知道他们是如何做到这一点的,所以我可以在我自己的基于浏览器的网络应用上做同样的事情吗?
答案 0 :(得分:0)
您必须在输入标记中添加一些参数以支持目录上传:webkitdirectory
用于基于Webkit的浏览器(例如Chrome)和mozdirectory
用于Mozilla的浏览器(Firefox)。
HTML代码可能如下所示:
<input type="file" webkitdirectory mozdirectory … />
您可以查看https://stackoverflow.com/a/46562869和https://stackoverflow.com/a/8218074,它们是类似问题的答案。