HTML
- <input type='file' class='upload-img' />
JQ
- $('.upload-img').on('change',function(){
- var file = this.files[0];
- // 图片后缀
- var suffix = file.name.split(".")[1];
- var reader = new FileReader();
- reader.readAsDataURL(file);
- reader.onload = function(e) {
- // base64编码
- image_base64 = this.result.split(",")[1];
- console.log(image_base64);
- }
- });
一般如果往后台传base64值的话,需要拼一下图片的后缀,可以字符串拼接把截取好的 suffix 拼在一起。
之前一次使用post请求上传图片过多,post请求理论上对参数的大小没有限制,但是服务器有限制,导致上传失败,这时设置一下Tomcat的server.xml里面的maxPostSize就可以了。不过还是建议使用Form表单提交文件,使其更有效率。