怎么将图片上传转换成base64并通过ajax上传 求解答 谢谢
2条回答 默认 最新
关注
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8" /> <meta http-equiv="X-UA-Compatible" content="IE=edge" /> <meta name="viewport" content="width=device-width, initial-scale=1.0" /> <title>Document</title> </head> <body> <input id="file" type="file" /> <button onclick="submit()">上传</button> <script src="https://cdn.bootcdn.net/ajax/libs/jquery/3.6.0/jquery.min.js"></script> <script> function submit() { var file = $("#file")[0].files[0]; console.log("file", file); var reader = new FileReader(); var AllowImgFileSize = 2100000; //上传图片最大值(单位字节)( 2 M = 2097152 B )超过2M上传失败 if (file) { //将文件以Data URL形式读入页面 reader.readAsDataURL(file); reader.onload = function (e) { //var ImgFileSize = reader.result.substring(reader.result.indexOf(",") + 1).length;//截取base64码部分(可选可不选,需要与后台沟通) if ( AllowImgFileSize != 0 && AllowImgFileSize < reader.result.length ) { alert("上传失败,请上传不大于2M的图片!"); return; } else { //执行上传操作 console.log(reader.result); upload(reader.result); } }; } } function upload(base64Url) { $.ajax({ url: "你的上传地址", type: "POST", data: { "约定的参数名": base64Url }, success(res) { console.log("上传成功", res); }, error(err) { console.log("上传失败", err); }, }); } // 参考来源 https://blog.csdn.net/qq_37899792/article/details/102600293 </script> </body> </html>
本回答被题主选为最佳回答 , 对您是否有帮助呢?解决 1无用