如果一定要给出是否存在的提示,就这样<html>  
<input type="file" name="file1">
<input type="button" value="验证" onclick="isExists()">
<script language="JavaScript">  
<!--  
function isExists() 
{  
  var fso,f; 
  var files=document.all.file1.value; 
  fso=new ActiveXObject("Scripting.FileSystemObject");  
  try{  
    f=fso.GetFile(files);  
    alert(f.size+" Bytes");  
  }catch(e){
    alert("文件不存在");
  }  
}  
//-->  
</script>  
</html>

解决方案 »

  1.   

    我看他的速度之快就应该是在本地判断的,但也肯定不是用的fso
    不过大家可以感受一下百度的上传那个页面
      

  2.   

    我觉得应用ajax可能性大
    用户提交时,或用户输入时,即验证
      

  3.   

    s:function(){
    if(!document.all){return false;}
    this.showPreview(true); //sv
    if(typeof(_gteIE7)!="undefined"){
    if(this.checkImgType(this.fid.value)) this.preview();
    else this.showErr("您指定的图片不存在或图片格式不合适,请检查后重试。");
    return false;
    }
    flagpath=0;
    flagsize=0;
    if(this.g_img)this.g_img.removeNode(true);
    this.g_img=document.createElement("img");
    this.g_img.id="forpre";
    this.g_img.style.position="absolute";
    this.g_img.style.visibility="hidden";
    this.g_img.onreadystatechange=this.orsc.bindAsEventListener(this);
    this.g_img.onerror=this.oe.bindAsEventListener(this);
    document.body.insertAdjacentElement("beforeend",this.g_img);
    this.g_img.src=this.fid.value;
    this.g_img.width=5;
    },
    oe:function(){
    if(!document.all || typeof(_gteIE7)!="undefined"){ return false;}
    else
    this.showPreview(false);
    this.showErr("您指定的图片不存在或图片格式不合适,请检查后重试。");
    },
    orsc:function(){
    if(this.g_img.readyState!="complete"){
    }else if(document.all && typeof(_gteIE7)=="undefined" && this.g_img.fileSize>3072000){ //sv
    this.showPreview(false);
    this.showErr(g_Errs[2]);
    }else{
    this.preview();
    }
    },
    checkImgType:function(val)
    {
    var reg=/\.((jpg)|(gif)|(bmp)|(png))$/ig;
    return reg.test(val);
    }
    };
    这是他的JS
      

  4.   

    <input type="file" id="spPhotoFile4_f" name="spPhotoFile0" style="width:300px"></span><div id="fail4" class="error" style="display:none">该照片未上传成功,请重新上传。</div><div id="suc4" class="sucess" style="display:none">该照片已上传成功</div><div id="err4" class="error" style="display:none"></div></td>
    <td width="70" class="photoprv" align="center" valign="middle"><img id="spPhotoPre4" src="http://img.baidu.com/hi/img/img_df70.gif" border="0" onReadyStateChange="DownImage(this);"></td>
    再看他的这个checkimg:function(){
    this.hidErr();
    if(this.fid.value==""){
    this.showPreview(false);
    }else{
    this.s();
    }
    var Uppic=new Class();
    Uppic.prototype =
    {
            initialize:function(fid,desdivid,descid,errid,preid,formname,failid,sucid)
            {
                    //可配置的项。
                    this.fid=G(fid);
    this.desdivid=G(desdivid);
                    this.descid=G(descid);
    this.errid=G(errid);
    this.preid=G(preid);
    this.formname=G(formname);
    this.failid=G(failid);
    this.sucid=G(sucid);
    //不可配置的项
    this.defaultPreSrc="http://img.baidu.com/hi/img/img_df70.gif";
    //0,成功。1,失败。2,前端验证失败。-1,初始值
    this.stat=-1;
    this.g_img=null;
    this.fid.onchange = this.checkimg.bindAsEventListener(this);
            },他就是利用这个来获取判断是否存在的