通过Javascript清除表单中的文件上传控件的值
最近工作与javascript打交道很多。
同事的项目里的一个问题,后台有很多上传控件,为了体验上有更佳的效果,为每一个单独的上传控件都增加了一个清空的值。
之前采用的是方法是,点击清空按钮,然后重载一次上传控件的父元素的innerHTML,但是在IE有一个版本中,貌似是ie7+,点击的时候装模作样的闪一下,原因大概入是重载的执行时间问题。
因此需要更换一种方法,问到偶这了,故作深思,电闪雷鸣,眉头一皱,计上心来。
搞了这一个曲线救国的办法。
clearInput | 清除file input上传控件的值

同事的项目里的一个问题,后台有很多上传控件,为了体验上有更佳的效果,为每一个单独的上传控件都增加了一个清空的值。
之前采用的是方法是,点击清空按钮,然后重载一次上传控件的父元素的innerHTML,但是在IE有一个版本中,貌似是ie7+,点击的时候装模作样的闪一下,原因大概入是重载的执行时间问题。
因此需要更换一种方法,问到偶这了,故作深思,电闪雷鸣,眉头一皱,计上心来。
搞了这一个曲线救国的办法。
- 起因:有很多文件上input传控件同时在一个form表单中出现,现要清空文件上传控件的值。但是文件上传控件的值是只读的,不能够通过js直接修改。
- 思路:form表单有一个reset()方法。
- 方法:在事件发生的时候,把要收拾的input抓出来,扔到一个临时的form元素中,把临时form重置,form下面的每一个控件的值为空了,文件上传的控件的值也清空了,然后再把input丢回原来的位置。
- 结果:搞定。
- 效果:兼容IE6/7,firefox2/3,opera9,google chrome。
clearInput | 清除file input上传控件的值

Tag:
- Evance's blog
- 3000 reads
Comments
zhuai wen
挖,挖,挖,渐变!!!
震撼了吧? 哈哈