在jquery中将图像转换为base64,用于文件jpg

时间:2015-05-29 08:31:13

标签: jquery ajax base64

我想在sedig之前将图像转换为base64到服务器。如何在jquery中做到这一点?

HTML:

  <input id="imgFld" type="file" accept="image/*;capture=camera" style="display:block;"/>  

 <input type="submit" id="submitImage" name=submit/>

JS:

(文档)$。就绪(函数(){

alert("hello");

$("#submitImage").on('click',function(e){
    e.preventDefault();

    var ext = $('#imgFld').val().split('.').pop().toLowerCase();
    if($.inArray(ext, ['gif','png','jpg','jpeg']) == -1) {
        alert('Invalid extension!, Please choose the right extension - gif, jpg/jpeg or png');
    }
    else{

        //covert to base64 and send ajax post
    }
 });

1 个答案:

答案 0 :(得分:0)

您只需将上传的图像打印到HTML5 <canvas>,然后您就可以使用canvas元素的toDataURL()方法,该方法将返回包含所请求数据URI的DOMString。

在这里阅读toDataURL()方法

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

结帐这个例子,它正在对{bse64

进行<canvas>

http://jsfiddle.net/handtrix/yvq5y/