基于BS结构的网站
现在需要在客户端上传一个文件
但是对文件大小要进行控制以前用的方案是
上传上去,如果大于给定的大小
那么返回一个文件过大的提示但是矛盾是
你必须要上传,也就是需要传入到服务器上才能判断
我现在是想在客户端就能进行判断文件大小然后给出true或false的提示信息如何能够完成这样的功能注意
你是使用页面的操作员,而程序是在远程的服务器
访问本机当然,绝对路径也没问题
但是问题是,操作员的文件,在服务器上并没有
如何能够判断服务器端判断还是客户端判断
如何处理呢

解决方案 »

  1.   

       var objStream = new ActiveXObject("ADODB.Stream");
        objStream.Type = 1;
        objStream.Open();
        objStream.LoadFromFile(上传的文件路径);
        Math.round(objStream.Size/1024,2)
      

  2.   

    js是不能操作本地文件的,除非是写applet,不过那也要设置数字签名才可以
      

  3.   

    可以使用Flash上传文件,在Flash中可以判断文件的大小的。可以参考一下u.115.com这些网盘的做法
      

  4.   

    IE 可以,Firefox 需要 3.5 以上的版本才支持。
      

  5.   

    js判断用这个试下function getFileByteSize(fileElementId) {  var obj = document.getElementById(fileElementId);
      if (obj == null) {return 0;}
      if (obj.value == null || obj.value == "") return 0;
      return obj.files.item(0).fileSize;
    }
      

  6.   

    <script type="text/javascript"> 
    function getFileSize(filePath) { 
    var image=new Image(); 
    image.dynsrc=filePath; 
    alert(image.fileSize); 

    </script> 
    <body> 
    <INPUT TYPE="file" NAME="file" SIZE="30" onchange="getFileSize(this.value)"> 
    </body>