input:file 选择多个文件 用FileReader读取为二进制

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了input:file 选择多个文件 用FileReader读取为二进制相关的知识,希望对你有一定的参考价值。

1.http://blog.csdn.net/jackfrued/article/details/8967667 关于FileReader的详细API

2.关于<input type="file" multiple> multiple 是html5的新属性,multiple属性规定输入字段可选择多个值。如果使用该属性,则字段可接受多个值。

3.用onchange事件来捕捉到选择上传的文件  event对象 event.target.files 这个就是你上传文件的各种属性 这是一个伪数组  其实是一个对象;

4.创建FileReader对象 读取文件第一个文件的时候 new FileReader().readAsDataURL(event.target.files[0]);

5.读取完成会触发onload事件 在onload事件里边继续调用 new FileReader().readAsDataURL(event.target.files[1]);

6.就会再次触发onload事件 这样直到所有的文件都被读取完;

 function uploadMulFile(uploadFile) {
    var fileLength = 0;
     var reader = new FileReader();
     reader.readAsDataURL(uploadFile[fileLength]);
   reader.onabort = function(e) {
         console.log("文件读取异常" + uploadFile[fileLength].name);
   };
     reader.onerror = function(e) {
         console.log("文件读取出现错误" + uploadFile[fileLength].name);
     };
     reader.onload = function(e) {
        if(e.target.result) {
            console.log("完成" + uploadFile[fileLength].name);
           fileLength++;
             if(fileLength < uploadFile.length) {
           reader.readAsDataURL(uploadFile[fileLength]);
           } else {
            //do something
             }
        }
     };
 }  

 

以上是关于input:file 选择多个文件 用FileReader读取为二进制的主要内容,如果未能解决你的问题,请参考以下文章

input:file上传文件类型(超详细)

input file多个文件上传基本教程

input file多个文件上传基本教程

input file实现多选,限制文件上传类型,图片上传前预览功能

input file弹出框选择文件后缀限制

HTML5基础 input file multiple 上传多个文件