gpt4 book ai didi

javascript - 文件读取器错误 : The object is already busy reading Blobs

转载 作者:技术小花猫 更新时间:2023-10-29 12:18:14 25 4
gpt4 key购买 nike

我正在制作一个用于照片库上传的拖放式文件上传系统。这是我处理丢失文件的源代码。如果我一个一个地放下它们,它可以工作多个文件,但是当我同时放下多个文件时,会发生此错误:

未捕获的 InvalidStateError:无法在“FileReader”上执行“readAsDataURL”:对象已忙于读取 Blob。

function handleFiles(files)
{
var reader = new FileReader();
var formdata = new FormData();

$.each(files, function(i, j)
{
$("td.photos span.status").html("Processing file: "+j.name);

formdata.append('file', j);

$.ajax({
url: "uploadalbum.php",
type: "POST",
dataType: "json",
data: formdata,
processData: false,
contentType: false,
success: uploadfinished
});

reader.onload = handleReaderLoad;
reader.readAsDataURL(j);
});
}

有什么想法吗?

最佳答案

我想错误已经给你了。

Failed to execute 'readAsDataURL' on 'FileReader': The object is already busy reading Blobs

所以文件读取器已经很忙了,但只有当你删除多个文件时才会这样?那么它可能正忙于第一个文件(第二个崩溃)。

当你把 var reader = new FileReader(); 放在你的 jQuery 中时,每个循环都会像下面这样工作:

$.each(files, function(i, j)
{
var reader = new FileReader();
$("td.photos span.status").html("Processing file: "+j.name);

formdata.append('file', j);
.... <snip>

}

关于javascript - 文件读取器错误 : The object is already busy reading Blobs,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24843508/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com