我不太明白下面的代码中发生了什么,如果有人能指导我正确的方向,也许我会更容易得到相同的变量如在else语句中,但手动(如果不支持FileReader
api)。我怎样才能获得与FileReader API手动相同的数据结构
Basicly在我的if语句我想打一个Ajax调用和变换图片以base64字符串,并将其保存到读变量相同的结构,我else语句:
$('#file').on('change', function(){
if(typeof FileReader === "undefined") {
//AJAX CALL HERE
}
else {
var reader = new FileReader();
}
reader.onload = function(e) {
options.imgSrc = e.target.result;
cropper = $('.imageBox').cropbox(options);
}
reader.readAsDataURL(this.files[0]);
this.files = [];
console.log(reader);
})
控制台日志中else语句中的读取变量显示如下:Picture
稍微更清楚。你想达到什么? reader.readAsDataURL()将为您提供Base64代码,您可以将其存储在String中并使用ajax传递给服务器。 – 2014-11-03 07:36:53
否我想发送图片到服务器并转换到Base64,然后以与reader.readAsDataURL()相同的格式返回字符串 – Orangutan 2014-11-03 07:39:13
然后您的请求应该是Multipart。使用 – 2014-11-03 07:40:29