空输入类型文件在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()