读书人

IE上 js怎么清空File

发布时间: 2012-12-30 10:43:15 作者: rapoo

IE下 js如何清空File
<input id="idFile" name="pic" type="file"/>


//检测程序
var exts = "jpg|gif|bmp|png|jpeg", paths = "|";
function CheckPreview(){
var value = this.file.value, check = true;
if ( !value ) {
check = false; alert("请先选择文件!");
} else if ( !RegExp( "\.(?:" + exts + ")$$", "i" ).test(value) ) {
check = false;
alert("只能上传以下类型:" + exts);
if (!window.addEventListener) {
document.getElementById("idFile").outerHTML+=''; //IE

}else {
document.getElementById("idFile").value = ""; //FF
}
} else if ( paths.indexOf( "|" + value + "|" ) >= 0 ) {
check = false; alert("已经有相同文件!");
}
return check;
}


在IE下面 如果类型错误只清空一次 继续上传就不会判断也不会清空了
各位高手帮帮
[解决办法]
写一个COOKIE到客户端,记录一个数,执行后给这个变量数加1!

alert("只能上传以下类型:" + exts);
if (!window.addEventListener) {
document.getElementById("idFile").outerHTML+=''; //IE

}else {

这里的if(取COOKIE判断是否大于某个值),如果大于就永远不执行document.getElementById("idFile").outerHTML+=''; //IE

通过客户端的COOKIE这样就变相达到了只清空一次的效果了!

读书人网 >跨浏览器开发

热点推荐