zoukankan      html  css  js  c++  java
  • 清除ie8下input file 文件域的值的方法

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

      那么很显然,我们就只能换个思路,把这个input元素复制一个,然后将原来的删除。

      在IE下复制元素的时候,其中的值是不会被复制的,所以就达到了清空文件域的目的了。

      而在Firefox下,其中的值也会被一同复制,那么我们就顺便清空一下就做到兼容了。

    实现代码如下:

     var file = $("#file")

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

       file.remove();

     

    最后,我们能不能设置/更改Input file文件域的值呢?

      答案是不可以,如果可以设置,网站就会很容易攻击客户端。这是不可能的设置成功的。做这个控件的人早已想到这一点。所以就不要去妄想更改input file文件域的值了。

  • 相关阅读:
    docker
    ibus
    看懂gradle
    tcp
    这丫头也的还真清楚,但是跑不通呢,换3.0.3的mybatis也不行
    lsb_release -a
    js中的整型都是用double存储的,有时候不精确,如,
    浏览器缓存及优化
    web即时通信技术
    css 变量
  • 原文地址:https://www.cnblogs.com/zheng-neng-liang/p/5990924.html
Copyright © 2011-2022 走看看