繁体   English   中英

带有进度条AJAX的多文件上传

[英]Multiple file upload with progress bar AJAX


嗨,开发人员,我正在使用上传文件设计页面

我正在尝试更改下面的代码以上传多个文件。

每个都有一个单独的进度条,如下所示。

请帮忙。

提前致谢


该页面喜欢

上传文件

这是代码

<!DOCTYPE html>
<html>

<head>
    <script>
            function _(el){
                return document.getElementById(el);
            }
            function uploadFile(){
                var file = _("file1").files[0];
                // alert(file.name+" | "+file.size+" | "+file.type);
                var formdata = new FormData();
                formdata.append("file1", file);
                var ajax = new XMLHttpRequest();
                ajax.upload.addEventListener("progress", progressHandler, false);
                ajax.addEventListener("load", completeHandler, false);
                ajax.addEventListener("error", errorHandler, false);
                ajax.addEventListener("abort", abortHandler, false);
                ajax.open("POST", "file_upload_parser.php");
                ajax.send(formdata);
            }
            function progressHandler(event){
                _("loaded_n_total").innerHTML = "Uploaded "+event.loaded+" bytes of "+event.total;
                var percent = (event.loaded / event.total) * 100;
                _("progressBar").value = Math.round(percent);
                _("status").innerHTML = Math.round(percent)+"% uploaded... please wait";
            }
            function completeHandler(event){
                _("status").innerHTML = event.target.responseText;
                _("progressBar").value = 0;
            }
            function errorHandler(event){
                _("status").innerHTML = "Upload Failed";
            }
            function abortHandler(event){
                _("status").innerHTML = "Upload Aborted";
            }
        </script>
    </head>



  <body>
        <form>
        <h2>HTML5 File Upload Progress Bar Tutorial</h2>
        <input type="file" name="file1" id="file1"><br> <input type="button" value="Upload File" onclick="uploadFile()">
        <progress id="progressBar" value="0" max="100" style="width:300px;"></progress> 
        <h3 id="status"></h3>
       <p id="loaded_n_total"> </p>           
        </form>
    </body>

</html>

 function uploadFile(event){ var file=event.target.files[0]; //the same code as you wrote } 

即使使用该行代码,它也仅侦听一次上传的进度。

  function uploadFile(event){ var file=event.target.files[0]; //the same code as you wrote } 

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM