js实现上传图片并显示图片名称


Posted in Javascript onDecember 18, 2019

本文实例为大家分享了js上传图片并显示图片名称的具体代码,供大家参考,具体内容如下

今天整理了一下上传图,用jquery的还是方便点,小女子整理的是原生的js!!!

<!DOCTYPE html>
<html>
<head lang="en">
 <meta charset="UTF-8">
 <title></title>
 <style>
  img{max-width: 100%; height: 100px;margin: 10px 20px;}
  .img_list .img-div{width: 100px;height: 200px; float: left; overflow: hidden;text-align: center; }
  .upload{position: relative;}
  .upload input{opacity: 0;position: absolute;top: 0;left: 10px;height: 100px;width: 100px;}
  .upload .upload_box{width: 100px;height: 100px;background-color: pink;color: white;}
  .img-div p{color: #28a4b0;margin: 0;}
 </style>
</head>
<body>
<div class="upload">
 <input class="file_input" type="file" multiple id="avc"/>
 <div class="upload_box">
  点我上传图片哦
 </div>
 
</div>
 
<div class="img_list">
 
</div>
<script>
 var file_input=document.getElementsByClassName("file_input")[0];
// 触发事件用的是change,因为files是数组,需要添加下标
 file_input.addEventListener("change",function(){
  var obj=this;
  var obj_name=this.files[0].name;
  var img_length=obj.files.length;
  for(var i=0;i<img_length;i++)
  {
   if(!(/image\/\w+/).test(obj.files[i].type))
   {
    alert("上传的图片格式错误,请上传图片");
    return false;
   }
   var reader = new FileReader();
   reader.error=function(e){
    alert("读取异常")
   }
   reader.onload = function(e){
//    div_html是包括图片和图片名称的容器
    var img_html='<img src="'+e.target.result+'"/>';
    var div_html=document.createElement("div");
    var p_html=document.createElement("p");
    if(document.getElementsByClassName("img_list")[0].children.length<5)
    {
     div_html.innerHTML=img_html;
     div_html.appendChild(p_html);
     p_html.innerHTML=obj_name;
     div_html.className="img-div";
     document.getElementsByClassName("img_list")[0].appendChild(div_html);
    }else{
     alert("最多上传5张图片")
    }
   };
   reader.οnlοadstart=function(){
    console.log("开始读取"+obj_name);
   }
   reader.οnprοgress=function(e){
    if(e.lengthComputable){
     console.log("正在读取文件")
    }
   };
   reader.readAsDataURL(obj.files[i]);
  }
 
 })
</script>
</body>
</html>

更多精彩内容请参考专题《ajax上传技术汇总》,《javascript文件上传操作汇总》和《jQuery上传操作汇总》进行学习。

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
javascript下过滤数组重复值的代码
Sep 10 Javascript
初窥JQuery(二)事件机制(2)
Dec 06 Javascript
jQuery ajax dataType值为text json探索分享
Sep 23 Javascript
关闭ie窗口清除Session的解决方法
Jan 10 Javascript
javascript中typeof操作符和constucor属性检测
Feb 26 Javascript
Node.js中使用socket创建私聊和公聊聊天室
Nov 19 Javascript
Javascript的表单验证-提交表单
Mar 18 Javascript
jQuery实现锚点向下平滑滚动特效示例
Aug 29 jQuery
Node.js中使用mongoose操作mongodb数据库的方法
Sep 12 Javascript
vue 过滤器filter实例详解
Mar 14 Javascript
JavaScript实现图片放大镜效果
Jun 27 Javascript
vue组件的路由高亮问题解决方法
May 11 Vue.js
js实现多图和单图上传显示
Dec 18 #Javascript
JS获取当前时间的年月日时分秒及时间的格式化的方法
Dec 18 #Javascript
微信小程序实用代码段(收藏版)
Dec 17 #Javascript
微信小程序修改数组长度的问题的解决
Dec 17 #Javascript
微信小程序利用云函数获取手机号码
Dec 17 #Javascript
ant design实现圈选功能
Dec 17 #Javascript
15分钟学会vue项目改造成SSR(小白教程)
Dec 17 #Javascript
You might like
实时抓取YAHOO股票报价的代码
2006/10/09 PHP
用PHP查询域名状态whois的类
2006/11/25 PHP
将一维或多维的数组连接成一个字符串的php代码
2010/08/08 PHP
解析PHP实现下载文件的两种方法
2013/07/05 PHP
php获取服务器端mac和客户端mac的地址支持WIN/LINUX
2014/05/15 PHP
Yii框架在页面输出执行sql语句以方便调试的实现方法
2014/12/24 PHP
Laravel 5框架学习之数据库迁移(Migrations)
2015/04/08 PHP
PHP $O00OO0=urldecode &amp; eval 解密,记一次商业源码的去后门
2020/09/13 PHP
js 连接数据库如何操作数据库中的数据
2012/11/23 Javascript
javascript实现信息增删改查的方法
2015/07/25 Javascript
js老生常谈之this,constructor ,prototype全面解析
2016/04/05 Javascript
jQuery树插件zTree使用方法详解
2017/05/02 jQuery
详解Vue.js分发之作用域槽
2017/06/13 Javascript
微信小程序movable view移动图片和双指缩放实例代码
2017/08/08 Javascript
jquery实现企业定位式导航效果
2018/01/01 jQuery
js微信分享接口调用详解
2019/07/23 Javascript
vue2.x 对象劫持的原理实现
2020/04/19 Javascript
Python正则表达式匹配ip地址实例
2014/10/09 Python
Python urllib、urllib2、httplib抓取网页代码实例
2015/05/09 Python
Python自动化运维_文件内容差异对比分析
2017/12/13 Python
python selenium 对浏览器标签页进行关闭和切换的方法
2018/05/21 Python
python如何创建TCP服务端和客户端
2018/08/26 Python
Django Path转换器自定义及正则代码实例
2020/05/29 Python
利用纯html5绘制出来的一款非常漂亮的时钟
2015/01/04 HTML / CSS
香港现代设计家具品牌:Ziinlife Furniture
2018/11/13 全球购物
Mansur Gavriel官网:纽约市的一个设计品牌
2019/05/02 全球购物
美国在线鞋类零售商:LifeStride
2019/06/09 全球购物
Carolina Lemke Berlin澳大利亚官网:时尚太阳镜品牌
2019/09/17 全球购物
欧姆龙医疗保健与医疗产品:Omron Healthcare
2020/02/10 全球购物
建筑专业自荐信
2013/10/18 职场文书
高中校园广播稿
2014/01/11 职场文书
大学生党员学习焦裕禄精神思想汇报
2014/09/10 职场文书
单位委托书范本(3篇)
2014/09/18 职场文书
军训个人总结
2015/03/03 职场文书
卫生主题班会
2015/08/14 职场文书
MySQL8.0.24版本Release Note的一些改进点
2021/04/22 MySQL