簡體   English   中英

如何將圖像轉換為文件中的Base64字符串?

[英]How to convert an image into a Base64 string in a file?

我想選擇多個圖像並將它們轉換為Base64字符串。 我將文件放入一個數組。 我的要求是,在轉換為Base64字符串后,我想將它們推入數組。 我無法將圖像轉換為Base64字符串。

 $("input[name=property_images]").change(function() { var names = []; for (var i = 0; i < $(this).get(0).files.length; ++i) { names.push($(this).get(0).files[i].name); } console.log(names); }); 
 <script src="https://ajax.googleapis.com/ajax/libs/jquery/3.1.1/jquery.min.js"></script> <input type="file" name="property_images" multiple="multiple" /> 

更改功能以存儲base64值

$(document).ready(function(){
    $("input[name=property_images]").change(function() {
      var imgBase64Arr = [];
      var files = this.files;
      for (var i = 0; i < files.length; i++) {
        (function(i){
          var FR = new FileReader();
          FR.onload = function(e) {
            imgBase64Arr.push( e.target.result );//adding base64 value to array

            if(i === files.length -1)//after all files are porcessed
              submitData(imgBase64Arr)
          };
          FR.readAsDataURL(files[i]);
        })(i);
      }

    });

   function submitData(imgBase64Arr){
     console.log(imgBase64Arr);
   }
});

在這里,我們有單個圖像來轉換base64字符串。

 function readFile() { if (this.files) { for(i=0;i<this.files.length;i++) { var FR= new FileReader(); FR.onload = function(e) { //document.getElementById("img").src = e.target.result; //document.getElementById("b64").innerHTML = e.target.result; //$("#b64").append("<div></div>").html(e.target.result); $('<img src="'+e.target.result+'" />').appendTo('#show-image'); $('<p>'+e.target.result+'</p>').appendTo('#text-image'); }; FR.readAsDataURL( this.files[i] ); } } } document.getElementById("inp").addEventListener("change", readFile, false); 
 <script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> <input id="inp" type='file' multiple> <div id='show-image'></div> <div id='text-image'></div> 

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM