获取图片信息和上传图片的步骤:
1、new 一个 form 表单信息,用于存放input选择的file文件信息
2、通过 file 的信息判断图片的大小
3、把 file 图片转化成base64的格式,赋值给 new 的图片,等图片加载完就可以获取图片的宽高等信息了
4、把 form 表单存放的file文件信息,通过 ajax 请求传给后端进行处理
<input type=\"file\" name=\"选择图片\" id=\"fileinput\" onchange=\"getimg()\">
function getimg(){
let formdata = new FormData();
// 获取input选择的文件信息
let file = $(\"#fileinput\")[0].files[0];
if(file.size > 3*1024*1024){
console.log(\"上传图片不能大于3M\");
return;
}
formdata.append(\'file\',file);
//读取图片数据
var reader = new FileReader();
reader.readAsDataURL(file);
reader.onload = function (e) {
let data = e.target.result;
//加载图片获取图片真实宽度和高度
let image = new Image();
image.src = data;
// 图片先加载完,才可以得到图片宽度和高度
image.onload = function(){
let width = image.width;
let height = image.height;
console.log(\"宽度:\" + width + \" 高度:\" + height)
console.log(formdata);
// 把图片参数发给后端进行解析
$.ajax({
method: \"post\",
dataType:\"json\",
url:\'/upload/image.do\',
data:formdata,
processData: false,
contentType: false,
success:function(data){
console.log(\"图片上传成功\")
},
error:function(data){
console.log(data);
}
})
}
}
}
版权声明
本文仅代表作者观点,不代表百度立场。
本文系作者授权百度百家发表,未经许可,不得转载。


