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

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

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

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

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

谢谢

input type = file有一些限制

你可以在这里阅读

这似乎适用于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(''); } 

jQuery文档说 :

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

使用.prop()