在浏览时附加多个输入文件上传

时间:2016-01-14 09:08:19

标签: javascript jquery forms

我试图在单击浏览按钮时附加多个文件,但是当我单击浏览按钮并再次选择多个文件时,浏览的文件将被重置(消失)或被新的多个浏览文件替换。 我正在做类似于http://jsfiddle.net/aHrTd/4/的事情,但我一次只做一个文件而不是单个文件

<input id="file-upload-plans" type="file" class="file" multiple="multiple" name="floorplans[]" data-show-upload="false" data-show-caption="false" data-show-remove="true" accept="image/jpeg,image/png" data-browse-class="btn btn-default">

3 个答案:

答案 0 :(得分:2)

这是一个工作演示,你可以在那里看到输出。

$("#file").change(function() {
    var result = $(this)[0].files;
    for(var x = 0;x< result.length;x++){
       var file = result[x];
       // here are the files
        $("#output").append("<p>" + file.name + " (TYPE: " + file.type + ", SIZE: " + file.size + ")</p>");  
    }
    
});
p{
  background-color: cyan;
  font-family: open sans;
  max-width: 350px;
  }
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<input type="file" id="file" name="file"  multiple="multiple"/>
<div id="output"></div>

答案 1 :(得分:1)

也许这http://jsfiddle.net/aHrTd/67/可以帮助你

<强> HTML

<form id="upload" action="upload.php" method="POST" enctype="multipart/form-data" onchange="addField();">
<label for="file">Soubor:</label>
<input type="file" name="files[]" class="file" /><br />
<input type="submit" name="Odeslat" value="Odeslat soubor" />
</form>

<强> JS

$(function(){
    $(document).on('change', '.file', function(){
      var e = $(this);
      if(e.val()){
        e.clone().insertAfter(e);
      }
    });
  });

答案 2 :(得分:0)

我不是100%肯定,但您可能可以使用javascript保存添加的文件。这里有几个例子。

https://developer.mozilla.org/en-US/docs/Web/API/FileList