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 相关文章推荐
JS 控制非法字符的输入代码
Dec 04 Javascript
javascript 触发HTML元素绑定的函数
Sep 11 Javascript
ASP.NET jQuery 实例12 通过使用jQuery validation插件简单实现用户注册页面验证功能
Feb 03 Javascript
js阻止冒泡及jquery阻止事件冒泡示例介绍
Nov 19 Javascript
jQuery获取Radio,CheckBox选择的Value值(示例代码)
Dec 12 Javascript
javascript中局部变量和全局变量的区别详解
Feb 27 Javascript
js淡入淡出的图片轮播效果代码分享
Aug 24 Javascript
学习JavaScript设计模式之迭代器模式
Jan 19 Javascript
微信小程序开发(二)图片上传+服务端接收详解
Jan 11 Javascript
详解vue + vuex + directives实现权限按钮的思路
Oct 24 Javascript
vue+webpack实现异步加载三种用法示例详解
Apr 24 Javascript
Jquery 获取相同NAME 或者id删除行操作
Aug 24 jQuery
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
php面向对象的方法重载两种版本比较
2008/09/08 PHP
一个基于PDO的数据库操作类
2011/03/24 PHP
浅析PHP微信支付通知的处理方式
2014/05/25 PHP
浅析php单例模式
2014/11/25 PHP
深入解析PHP的Yii框架中的event事件机制
2016/03/17 PHP
php封装一个异常的处理类
2017/06/08 PHP
php curl上传、下载、https登陆实现代码
2017/07/23 PHP
JavaScript经典效果集锦
2010/07/06 Javascript
js模拟点击事件实现代码
2012/11/06 Javascript
开发 Internet Explorer 右键功能表(ContextMenu)
2013/07/03 Javascript
jquery中change()用法实例分析
2015/02/06 Javascript
浅谈JS继承_寄生式继承 &amp; 寄生组合式继承
2016/08/16 Javascript
prototype与__proto__区别详细介绍
2017/01/09 Javascript
canvas实现流星雨的背景效果
2017/01/13 Javascript
基于node.js依赖express解析post请求四种数据格式
2017/02/13 Javascript
Angular.Js中ng-include指令的使用与实现
2017/05/07 Javascript
JS禁止浏览器右键查看元素或按F12审查元素自动关闭页面示例代码
2017/09/07 Javascript
Vue.js 图标选择组件实践详解
2018/12/03 Javascript
微信小程序调用微信支付接口的实现方法
2019/04/29 Javascript
Python2实现的LED大数字显示效果示例
2017/09/04 Python
Python使用文件锁实现进程间同步功能【基于fcntl模块】
2017/10/16 Python
Python实现修改IE注册表功能示例
2018/05/10 Python
python3爬虫获取html内容及各属性值的方法
2018/12/17 Python
Python实现把多维数组展开成DataFrame
2019/11/30 Python
详解Python中第三方库Faker
2020/09/25 Python
python实现scrapy爬虫每天定时抓取数据的示例代码
2021/01/27 Python
丹尼尔惠灵顿手表天猫官方旗舰店:Daniel Wellington
2017/08/25 全球购物
西海岸男士和男童服装:Johnnie-O
2018/03/15 全球购物
优质美利奴羊毛袜,不只是徒步旅行:Darn Tough Vermont
2018/11/05 全球购物
销售总监工作职责
2013/11/21 职场文书
商场中秋节广播稿
2014/01/17 职场文书
体育专业自荐书
2014/05/29 职场文书
2014年保洁工作总结
2014/11/24 职场文书
2014年女职工工作总结
2014/11/27 职场文书
幸福终点站观后感
2015/06/04 职场文书
Python制作春联的示例代码
2022/01/22 Python