使用jQuery清空file文件域的解决方案

?对一个文件域(input type=file)使用了验证后,我们总会希望把文件域中的值给清空了,在IE中,由于安全设置的原因,是不允许更改文件域的值的,接下来为大家介绍一下解决方法

般来说,在对一个文件域(input type=”file”)使用了验证后,我们总会希望把文件域中的值给清空了(否则错误的文件仍然会被提交),而在IE中,安全设置的原因,是不允许更改文件域的值的(也就是不能使用val(“”))

那么很显然,我们就只能换个思路,把这个input元素复制一个,然后将原来的删除。 
在IE下复制元素的时候,其中的值是不会被复制的,所以就达到了清空文件域的目的了。 
而在Firefox下,其中的值也会被一同复制,那么我们就顺便清空一下就做到兼容了。 

代码如下: 

var file = $("#file") 

file.after(file.clone().val("")); 
file.remove(); 



郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。