JavaScript实现FileReader图片预览与上传功能

作者:异步漫步时间:2026-10-23 01:15:56浏览:214

本文介绍了利用JavaScript中FileReader对象实现图片本地预览及上传的功能。通过HTML文件输入控件触发读取,使用readAsDataURL将图片转为Base64编码并在前端即时显示。随后通过AJAX将图片数据发送至后端接口,完成上传流程。代码包含jQuery引用、DOM操作及异步请求处理,适用于常见Web开发场景。

JavaScript实现FileReader图片预览与上传功能

以下是关于使用FileReader实现图片预览与上传功能的代码示例。

HTML结构部分:

HTML结构实现


<div style="width:200px;height:200px;">
 <label for="ceshi" style="display:block;">
  <img style="width:200px;height:200px;" id="image" src=""/>
  <input id="ceshi" type="file" onchange="selectImage(this);" hidden/>
 </label>
</div>

JavaScript逻辑部分:

JavaScript逻辑实现


 var image = '';
 function selectImage(file){
 if(!file.files || !file.files[0]){
   return;
 }
 var reader = new FileReader();
 reader.onload = function(evt){
  document.getElementById('image').src = evt.target.result;
  image = evt.target.result;
 }
 reader.readAsDataURL(file.files[0]);
 }
 function uploadImage(){
  console.log(image);
  $.ajax({
   type:'POST',
   url: 'ajax/uploadimage', //图片上传地址
   data: {image: image},
   async: true,
   dataType: 'json',
   success: function(data){
   if(data.success){
    alert('上传成功');
   }else{
   alert('上传失败');
   }
  },
  error: function(err){
   alert('网络故障');
  }
 });
}

需要引用:<script src="js/jQuery.min.js"></script>

总结

以上介绍了JavaScript中利用FileReader实现图片预览及上传功能的完整代码,希望能对大家有所帮助。如有任何疑问,欢迎留言,小编会及时回复。感谢大家对本站的支持!

作者最新文章