网上一般的方法
在ajax的开发中,需要处理对文件上传的控件的值的清理,默认情况下,浏览器的安全性不让操作input type=file的value项,解决方法如下: 对于input type='file'的值的清理方法如下:
function refreshUploader(who){
// pass who as argument,
// or who=document.getElementsByName('xx_file')[0]; var who2= who.cloneNode(false);
who2.οnchange= who.onchange;// events are not cloned who.parentNode.replaceChild(who2,who);
}
还有一种文件clone的方式:
file是文本域,我们一般都 会使用它来上传文件,在上传文件时我们需要验证,验证完成后,如果存在错误,为了防止将错误信息也上传上去,我们总是希望能够将其清空。但是在IE中,为 了安全起见它是不允许我们改变其中的值。Firefox可以。为了兼容,我们就必须来考虑其他的方式。
我们可以这样考虑,先将该元素复制下来,然后将该值清空。在IE下,我们复制该元素时,他的值是不会复制下来得,这样就可以达到清空的目的。但是firefox会将值给复制下来,所以为了兼容,可以得到如下这个:
var
file = $(selectedId)
file.after(file.clone().val(
""
));
file.remove();
------网上转载