2

如何在不使用拖放的情况下实现文件夹上传?我希望能够像选择文件一样选择文件夹。

另外,文件数和文件夹深度的上限是多少?

谢谢

4

1 回答 1

1

这是可能的,但解决方案有点尴尬,这就是为什么 Fine Uploader 本身不支持这个的原因。文件输入元素可以允许您选择文件夹或文件,而不是同时选择两者。因此,如果您希望您的用户进行选择,您将需要提供一个单独的文件输入,专门用于选择文件夹,或者维护一个文件输入元素,一旦知道用户的意图就可以即时修改。

Fine Uploader 将来可能会通过选择器对话框提供对选择文件夹的支持,作为案例 #819的一部分。同时,如果您想提供允许您的用户通过选择器对话框选择文件夹的功能,您将需要为文件夹提供专用的备用文件输入元素,然后将文件夹中的选定文件通过以下方式发送到 Fine Uploader Fine Uploader 的addFilesAPI 方法。

这是一个例子:

<input type="file" id="directoryFileInput" webkitdirectory>
<div id="myFineUploaderContainer"></div>

$('#myFineUploaderContainer').fineUploader({
    request: {
        endpoint: 'my/endpoint'
    }
});

$('#directoryFileInput').change(function() {
    var fileList = this.files;

    $('#myFineUploaderContainer').fineUploader('addFiles', fileList);
});

当然,您可能还想为这个特定的文件输入设置样式。一旦 Fine Uploader 案例 #819 完成,您就可以要求 Fine Uploader 为您设置样式并跟踪任何其他文件输入。在那之前,如果这对您很重要,您将需要使任何其他文件输入元素不透明并将其包装在样式化的 div 中。

于 2013-06-26T21:35:11.460 回答