空输入类型文件在IE中不起作用

时间:2012-04-26 05:48:08

标签: javascript jquery

我写了这个简单的javascript代码:

$("input[type='file']").attr("value", "");

适用于Firefox和Chrome,但不适用于IE(我在IE9中试过)

清空输入类型文件值的好方法是什么?

谢谢

2 个答案:

答案 0 :(得分:10)

输入类型=文件

有一些限制

您可以阅读here

这似乎适用于IE8,IE9

$("input[type='file']").replaceWith($("input[type='file']").clone(true));

要在IE8中测试,我将开发人员工具中的兼容模式更改为IE8

编辑:

至于许多IE黑客,我认为这更好

    if($.browser.msie){
        $("input[type='file']").replaceWith($("input[type='file']").clone(true));
    } else {
        $("input[type='file']").val('');
    }

答案 1 :(得分:1)

jQuery docs says

  

从jQuery 1.6开始,.attr()方法为属性返回undefined   尚未设定。另外,不应该使用.attr()   普通对象,数组,窗口或文档。要检索和   更改DOM属性,使用.prop()方法。

使用.prop()