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

一般來說,在對一個文件域(input type=”file”)使用了驗證後,我們總會希望把文件域中的值給清空了(否則錯誤的文件仍然會被提交),而在IE中,安全設置的原因,是不允許更改文件域的值的(也就是不能使用val(“”))

那麼很顯然,我們就只能換個思路,把這個input元素複製一個,然後將原來的刪除。
在IE下複製元素的時候,其中的值是不會被複制的,所以就達到了清空文件域的目的了。

而在Firefox下,其中的值也會被一同複製,那麼我們就順便清空一下就做到兼容了。


代碼如下:

var file = $("#file")
file.after(file.clone().val(""));
file.remove(); 

http://www.jb51.net/article/35491.htm
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章