JavaScript判断文件上传类型的方法


Posted in Javascript onSeptember 02, 2014

本文实例展示了JavaScript判断文件上传类型的方法,是一个非常常用的技巧。具体实现方法如下:

文件上传时用到一个功能,使用html元素的input标签实现:

<input id="imageFile" name="imageFile1" accept="image/jpg,image/jpeg,image/png,image/bmp,image/gif" type="file"   title="点击选择文件" onchange="imageSubmit(this,0);"/>

选中图片后立即触发onchange事件上传图片,但是重复选择相同的图片不会触发onchang事件,解决办法如下:

function imageSubmit(obj, imageType) { 
  if (imageType == "0") { 
  //相关处理代码... 

  //解决上传相同图片不触发onchange事件
  var nf = obj.cloneNode(true);
  nf.value=''; 
  obj.parentNode.replaceChild(nf, obj);
  }
}

cloneNode()方法用来创建调用这个节点的一个完全相同的副本,参数true表示执行深复制,也就是复制节点及整个子节点树,在参数为false的情况下,执行浅复制,即只复制节点本身。复制后返回的节点副本属于文档所有,但并没有为它指定父节点。因此,这个节点副本就成为了一个“孤儿”,除非通过appendChild()、insertBefore()或replaceChild()将它添加到文档中。

希望本文所述对大家运用javascript进行web程序设计有所帮助。

Javascript 相关文章推荐
JavaScript函数、方法、对象代码
Oct 29 Javascript
Array.prototype.concat不是通用方法反驳[译]
Sep 20 Javascript
jquery定时滑出可最小化的底部提示层特效代码
Oct 02 Javascript
弹出窗口并且此窗口带有半透明的遮罩层效果
Mar 13 Javascript
JQuery选择器、过滤器大整理
May 26 Javascript
利用jQuery实现WordPress中@的ID悬浮显示评论内容
Dec 11 Javascript
jQuery实现元素拖拽并cookie保存顺序的方法
Feb 20 Javascript
基于jQuery插件jqzoom实现的图片放大镜效果示例
Jan 23 Javascript
JavaScript数据结构学习之数组、栈与队列
May 02 Javascript
vue实例中data使用return包裹的方法
Aug 27 Javascript
JS eval代码快速解密实例解析
Apr 23 Javascript
js实现无缝轮播图插件封装
Jul 31 Javascript
JavaScript中九种常用排序算法
Sep 02 #Javascript
事件委托与阻止冒泡阻止其父元素事件触发
Sep 02 #Javascript
解决jquery版本冲突的有效方法
Sep 02 #Javascript
ajaxFileUpload.js插件支持多文件上传的方法
Sep 02 #Javascript
引用其它js时如何同时处理多个window.onload事件
Sep 02 #Javascript
JS中自定义定时器让它在某一时刻执行
Sep 02 #Javascript
理解javascript中的回调函数(callback)
Sep 02 #Javascript
You might like
使用eAccelerator加密PHP程序
2008/10/03 PHP
php 解压rar文件及zip文件的方法
2014/05/05 PHP
phpstorm激活码2020附使用详细教程
2020/09/25 PHP
Javascript代码混淆综合解决方案-Javascript在线混淆器
2006/12/18 Javascript
js 获取浏览器高度和宽度值(多浏览器)
2009/09/02 Javascript
JS与C#编码解码
2013/12/03 Javascript
javascript删除一个html元素节点的方法
2014/12/20 Javascript
javascript为按钮注册回车事件(设置默认按钮)的方法
2015/05/09 Javascript
JS实现自动变化的导航菜单效果代码
2015/09/09 Javascript
jQuery easyui的validatebox校验规则扩展及easyui校验框validatebox用法
2016/01/18 Javascript
[原创]JS基于FileSaver.js插件实现文件保存功能示例
2016/12/08 Javascript
从零开始学习Node.js系列教程一:http get和post用法分析
2017/04/13 Javascript
新版vue-cli模板下本地开发环境使用node服务器跨域的方法
2018/04/03 Javascript
深入浅析Vue.js计算属性和侦听器
2018/05/05 Javascript
Vue如何获取数据列表展示
2019/12/11 Javascript
Vue文本模糊匹配功能如何实现
2020/07/30 Javascript
如何在JavaScript中正确处理变量
2020/12/25 Javascript
Python基于scapy实现修改IP发送请求的方法示例
2017/07/08 Python
用Python实现数据的透视表的方法
2018/11/16 Python
python 将日期戳(五位数时间)转换为标准时间
2019/07/11 Python
Python数组并集交集补集代码实例
2020/02/18 Python
深入了解Python enumerate和zip
2020/07/16 Python
Python中使用Selenium环境安装的方法步骤
2021/02/22 Python
薇姿法国官网:Vichy法国
2021/01/28 全球购物
C++的几个面试题附答案
2016/08/03 面试题
在求职信中如何凸显个人优势
2013/10/30 职场文书
幼儿园五一活动方案
2014/02/07 职场文书
财务会计自荐信范文
2014/02/21 职场文书
元旦联欢会感言
2014/03/04 职场文书
计算机软件专业求职信
2014/06/10 职场文书
教育系统干部作风整顿心得体会
2014/09/09 职场文书
教师政风行风评议心得体会
2014/10/21 职场文书
道歉信怎么写
2015/05/12 职场文书
安全生产会议制度
2015/08/06 职场文书
九不准学习心得体会
2016/01/23 职场文书
低门槛开发iOS、Android、小程序应用的前端框架详解
2021/10/16 Javascript