Javascript Blueimp文件上载程序-Chrome文件夹上载限制
只有chrome 22及更高版本支持在浏览器上载(html5)上拖放文件夹时上载相对文件夹名称 当我尝试使用chrome拖放文件夹支持上传多个文件时,我遇到了某种限制。我找不到任何方法来改变或禁用这个限制Javascript Blueimp文件上载程序-Chrome文件夹上载限制,javascript,jquery,google-chrome,file-upload,blueimp,Javascript,Jquery,Google Chrome,File Upload,Blueimp,只有chrome 22及更高版本支持在浏览器上载(html5)上拖放文件夹时上载相对文件夹名称 当我尝试使用chrome拖放文件夹支持上传多个文件时,我遇到了某种限制。我找不到任何方法来改变或禁用这个限制 当您只需选择1000个文件并将其放到uploader时,它就会工作,并在等待一段时间后将这些文件添加到上载列表中。没关系 当您选择一个包含1000个文件的文件夹并放入uploader时,uploader只会在该文件夹中随机添加100个文件 当您创建110个文件夹时,每个文件夹中包含1个文件,
- 当您只需选择1000个文件并将其放到uploader时,它就会工作,并在等待一段时间后将这些文件添加到上载列表中。没关系
- 当您选择一个包含1000个文件的文件夹并放入uploader时,uploader只会在该文件夹中随机添加100个文件
- 当您创建110个文件夹时,每个文件夹中包含1个文件,然后uploader只添加100个文件,而不添加10个文件夹
已经谢谢大家了。在搜索相关文档两天后,我可以在以下url中找到答案 我可以修复蓝精灵上传器 在jquery.fileupload.js中 查找: 替换:
} else if (entry.isDirectory) {
dirReader = entry.createReader();
var entries = [];
var readEntries = function () {
dirReader.readEntries(function (results /* entries */) {
if (results.length) {
entries = entries.concat(Array.prototype.slice.call(results || [], 0));
readEntries();
} else {
that._handleFileTreeEntries(
entries,
path + entry.name + '/'
).done(function (files) {
dfd.resolve(files);
}).fail(errorHandler);
}
}, errorHandler);
};
readEntries();
} else {
我希望这会有所帮助。顺便说一句,这个错误似乎在jquery uploader的最新版本中得到了修复。如果你使用的是最新版本,那就不要发这篇文章。嘿@wmwm你能告诉我们你是如何在后端处理文件夹上传的吗?嗨@karthik-k,我们没有使用原始的上传处理程序。我们正在使用我们自己的软件。但您可以在主上传程序javascript的bind('fileuploadadd',function(e,data){部分使用data.files[0].relativePath。它也可以在上传时发布此值。如果没有,您可以从上传程序javascript轻松添加。
} else if (entry.isDirectory) {
dirReader = entry.createReader();
var entries = [];
var readEntries = function () {
dirReader.readEntries(function (results /* entries */) {
if (results.length) {
entries = entries.concat(Array.prototype.slice.call(results || [], 0));
readEntries();
} else {
that._handleFileTreeEntries(
entries,
path + entry.name + '/'
).done(function (files) {
dfd.resolve(files);
}).fail(errorHandler);
}
}, errorHandler);
};
readEntries();
} else {