首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >我可以一个接一个地在输入文件上插入图像吗?

问我可以一个接一个地在输入文件上插入图像吗?
EN

Stack Overflow用户
提问于 2017-05-08 10:14:11
回答 1查看 89关注 0票数 2

当我逐个插入图像时,“输入文件”只读取一张图片。

但是,当我多次插入图像时,结果的读取量与用户输入的图像相同。

代码语言:javascript
复制
window.onload = function() {

  //Check File API support
  if (window.File && window.FileList && window.FileReader) {
    var filesInput = document.getElementById("files");

    filesInput.addEventListener("change", function(event) {

      var files = event.target.files; //FileList object
      var output = document.getElementById("result");

      for (var i = 0; i < files.length; i++) {
        var file = files[i];

        //Only pics
        if (!file.type.match('image'))
          continue;

        var picReader = new FileReader();

        picReader.addEventListener("load", function(event) {

          var picFile = event.target;

          var div = document.createElement("div");

          div.innerHTML = "<img class='thumbnail' src='" + picFile.result + "'" +
            "title='" + picFile.name + "'/>";

          output.insertBefore(div, null);

        });

        //Read the image
        picReader.readAsDataURL(file);
      }

    });
  } else {
    console.log("Your browser does not support File API");
  }
}
代码语言:javascript
复制
article {
  width: 80%;
  margin: auto;
  margin-top: 10px;
}

.thumbnail {
  height: 100px;
  margin: 10px;
}
代码语言:javascript
复制
<article>
  <label for="files">Select multiple files: </label>
  <input id="files" type="file" multiple/>
  <div id="result"></div>
</article>

​

请一个接一个地输入多个图像

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2017-05-09 16:36:07

如果你想上传照片倍数。此方法将防止用户输入一张图片,然后,用户将能够在上传前输入下一张图片。

​

代码语言:javascript
复制
$(document).ready(function() {
  $(document).on("click", 'input[name="images-post[]"]', function() {
    $('.menu-create-post .mdi-camera').append('<input type="file" name="images-post[]" accept="image/*" multiple="multiple">');
  });
});
代码语言:javascript
复制
<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.1.1/jquery.min.js"></script>
<div class="wrapper">
  <span class="span-wrapper" style="display: inline-block;">
    <input type="file" name="images-post[]"/>
  </span>
</div>
<div class="menu-create-post">
  <div class="mdi-camera"></div>
</div>

​

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/43845044

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档