我想请教一下,这个属性 "Accept" 究竟有什么含义??!! 按照官方的说法,这个属性是帮助“FILE”控件“过滤文件类型”用的,我的理解是,如果对FILE控件设置了该属性,例如:
accept= "image/jpg" , 那么当我点“浏览”,弹出文件对话框中,对话框应该自动把非JPG文件过滤掉,只显示图片文件,但事实上不是这样,而是好象这个属性设置与不设置一个样,而且,在VS。NET的设计页面,使用该属性,智能提示还会说“找不到INPUT控件的 accept 属性”,这究竟是怎么会事??希望各位指教! 这个问题比较急迫!

解决方案 »

  1.   

    <script>
    function check(){
    var type=form1.upfile.value.match(/^(.*)(\.)(.{1,8})$/)[3];
    type=type.toUpperCase();
    if(type=="XLS" || type=="DOC" || type=="HTML" || type=="TXT"){
    return true;
    }
    else{
    alert("上传类型有误");
    return false;
    }
    }</script>
    <form enctype="multipart/form-data" onsubmit="return(check())" name="form1">
    <input type="file" name="upfile">
    <input type="submit" value="上传">
    </form>
      

  2.   

    楼上的,谢谢解答,我也做了在JS端检查,不过现在我更想要搞清这个“ACCEPT”的含义!有没有人能具体解释一下“ACCEPT”这个属性究竟是什么意思??
      

  3.   

    不是所有的浏览器都支持这个ACCEPT的过滤得。
    参考这个帖子:
    http://www.dotnetforums.net/showthread.php?t=75162&goto=nextnewest
    得出的结论是在netscape下面支持,而在IE下面不支持,我试了一下,在FireFox
    下面也不支持,你还是使用一个服务器端的验证吧。
      

  4.   

    楼上的实在是太感谢了!这个ACCEPT实在是捆饶了我很长时间,就是弄不明白是怎么好象“没效果”,今天终于知道是怎么回事了,谢谢啊!!