【问题标题】:How to upload multiple files through one upload button如何通过一个上传按钮上传多个文件
【发布时间】:2016-10-08 07:24:43
【问题描述】:

当我执行它时,并不是我的所有文件都被上传,而只是其中一个。

JavaScript

function upload() {
    document.getElementById("uploading").innerHTML="uploading....";
    var myfile=document.getElementById("fileinput").files[0];

    //alert(myfile.size);
    var r = new FileReader();

    r.onload = function(e) { 
        var contents = e.target.result;

        parseContents(contents);
        //document.getElementById("cont").innerHTML=fileContent;

        document.getElementById("uploading").innerHTML="<h3>File uploaded: "+myfile.name;
    }

    r.readAsText(myfile);
}

HTML

<body onload="initialize()">
    <div id="container1"><h>MY TRANSIT PLANNER</h></div>
    <h3 style="text-decoration:underline;">choose a file for input:</h3>
    <input type="file" id="fileinput" multiple="multiple"onchange="upload()"/>
    <br>
    <div style="color: black" id="uploading"></div>
    <script src="https://maps.googleapis.com/maps/api/js?"async defer></script>
    <input type="button" id="btn-sgtd" type="text" value="SAVE GTD" onclick="writetofile()"/>
    <h3 style="text-decoration:underline;">Choose files to Segment: </h3>
    <form action="files.php" method="POST" enctype="multipart/form-data">
        <input type="file" name="my_file[]" multiple="multiple"><br>
        <br>
        <input type="submit" value="SEGMENT" class="button"><br>
    </form>
    <div id="map"></div>
</body>

【问题讨论】:

标签: javascript php html css


【解决方案1】:

你应该做循环

   function upload() {


    for (var i = 0; i < document.getElementById("fileinput").files.length; i++) 
        {                           
                document.getElementById("uploading").innerHTML="uploading....";
                var myfile=document.getElementById("fileinput").files[i];
                //alert(myfile.size);
                var r = new FileReader();
                r.onload = function(e) 
                { 
                    var contents = e.target.result;

                    parseContents(contents);
                    //document.getElementById("cont").innerHTML=fileContent;

                    document.getElementById("uploading").innerHTML="<h3>File uploaded: "+myfile.name;
                }

                r.readAsText(myfile);
        }
}

【讨论】:

    【解决方案2】:

    试试这个对你有帮助

        function upload() {
            document.getElementById("uploading").innerHTML="uploading....";
            var myfile=document.getElementById("fileinput").files[0];
    
            //alert(myfile.size);
            var r = new FileReader();
    
            r.onload = function(e) {
    
            if(!e.target.files) return;
    
            var files = e.target.files;
            for(var i=0; i < files.length; i++) {
                var f = files[i];
                 document.getElementById("uploading").innerHTML="<h3>File uploaded: "+f;
            }
        }
    

    【讨论】:

      猜你喜欢
      • 2018-11-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2019-12-23
      • 1970-01-01
      • 2015-04-28
      • 1970-01-01
      相关资源
      最近更新 更多