javascript - 如何解决读取文件时出现的 blob 错误?

标签 javascript jquery ember.js

我在输入文本框中上传文件时遇到此错误。

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

我必须上传 html 文件并预览该文件中的文本,但在上传时会在控制台中抛出此错误。如何解决此错误。 这是我的 JavaScript 代码--

>  $(".image-preview-input input:file").change(function (){    
>                   var file = this.files[0];
>                   var reader = new FileReader();
>                   var FileExtension = file.name.split('.')[file.name.split('.').length - 1].toLowerCase();
>                   if(FileExtension !== 'html'){
>                     $('#ValidationMessage').css("color", "red");
>                     $('#ValidationMessage').html("Please select the html extension file.");
>                     this.set('template','');  
>                     $('.image-preview-input input:file').val(""); 
>                   }
>                   // Set preview image into the popover data-content
>                   reader.readAsText(file);
>                   reader.onload = function (e) {                      
>                       $('#ValidationMessage').empty();
>                       $(".image-preview-input-title").text("Change");
>                       $(".image-preview-clear").show();
>                       $(".image-preview-filename").val(file.name);                      
>                       self.set('template',e.target.result);
>                   }    
>                   reader.readAsDataURL(file);
>               });

最佳答案

您正在读取文件两次。

首先:

reader.readAsText(file);

然后这里:

reader.readAsDataURL(file);

我看不出第二次阅读的理由。如果您打算使用它,请将其放在您的 onload() 回调中;

关于javascript - 如何解决读取文件时出现的 blob 错误?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44477207/

相关文章:

javascript - 激活功能后显示 div

javascript - 动态向div添加新的jqPlot图表使旧的图表变空

ember.js - Ember Data 中的类继承有很多关联

javascript - 如何对相互关联的选择框进行建模?

javascript - 如何在 Ember.js 中动态加载 partials/views/templates

javascript - 验证绘图

javascript - 使用 Angular 有条件地启用 Bootstrap 子菜单

javascript - 如何过滤掉具有相同关键词的不同标题

javascript 变量不在表单中显示 codeigniter 的验证错误

jquery - 针对正文中的特定单词并对其应用样式?