如果上传的小于设置的大小,则一切正常;如果大于设置,不仅本次上传失败,而且无法重新上传,重新上传不管多大都不行!必须要重启tomcat,这是怎么回事,怎么解决啊?还有,我想在Jquery中限制文件大小,该怎么做?struts框架jquery

解决方案 »

  1.   

    http://blog.csdn.net/withiter/article/details/7272338
      

  2.   

    这不是我要的
    这里面有判断上传文件大小的。
    jquery直接判断:function findSize(field_id)
     {
               var fileInput = $("#"+field_id)[0];
               byteSize  = fileInput.files[0].fileSize;
            return ( Math.ceil(byteSize / 1024) ); // Size returned in KB.
    }
      

  3.   

    以前用struts2的时候,貌似最大就支持2M。
      

  4.   

    恩,默认是2M,我上传超过2M的失败很正常,但是我之后我就无法重新上传了,必须重启tomcat才恢复正常,真不明白啊!!!
      

  5.   

    从楼主的描述来看楼主应该是用了spring来管理action,如果是的话楼主检查下你action的scope是不是没有设置成prototype默认是singleton的就会出现你一次报错,后面的都是不能进到这个action了。前台判断file的文件大小的js代码如下var file=document.getElementById("file");
    if(navigator.userAgent.indexOf("MSIE")!=-1){//IE下要用ActiveX控件
       var fos=new ActiveXObject("Scripting.FileSystemObject");
       var f=fos.GetFile(file.value);
       alert(f.size);
    }else{//firefox和google的直接用
       alert(file.files[0].size);
    }
      

  6.   

    这不是我要的
    这里面有判断上传文件大小的。
    jquery直接判断:function findSize(field_id)
     {
               var fileInput = $("#"+field_id)[0];
               byteSize  = fileInput.files[0].fileSize;
            return ( Math.ceil(byteSize / 1024) ); // Size returned in KB.
    }
    这个不行,测试不通过!
      

  7.   


    那我那时候倒是不会,只是上传失败而已
    tomcat仍然正常运行
    另外好像修改有一处配置可以支持到10M,这也是后来无意中才知道的,没特意去记。楼主可以的话去搜搜吧,搜到也分享给我。
      

  8.   

    从楼主的描述来看楼主应该是用了spring来管理action,如果是的话楼主检查下你action的scope是不是没有设置成prototype默认是singleton的就会出现你一次报错,后面的都是不能进到这个action了。前台判断file的文件大小的js代码如下var file=document.getElementById("file");
    if(navigator.userAgent.indexOf("MSIE")!=-1){//IE下要用ActiveX控件
       var fos=new ActiveXObject("Scripting.FileSystemObject");
       var f=fos.GetFile(file.value);
       alert(f.size);
    }else{//firefox和google的直接用
       alert(file.files[0].size);
    }
    单例模式。我明白了!!!谢谢!检测文件大小的代码,其中谷歌火狐的可以了,但是IE的显示无法创建对象,这个怎么回事?
      

  9.   

    从楼主的描述来看楼主应该是用了spring来管理action,如果是的话楼主检查下你action的scope是不是没有设置成prototype默认是singleton的就会出现你一次报错,后面的都是不能进到这个action了。前台判断file的文件大小的js代码如下var file=document.getElementById("file");
    if(navigator.userAgent.indexOf("MSIE")!=-1){//IE下要用ActiveX控件
       var fos=new ActiveXObject("Scripting.FileSystemObject");
       var f=fos.GetFile(file.value);
       alert(f.size);
    }else{//firefox和google的直接用
       alert(file.files[0].size);
    }
    单例模式。我明白了!!!谢谢!检测文件大小的代码,其中谷歌火狐的可以了,但是IE的显示无法创建对象,这个怎么回事?
    IE的要用activeX控件如果你ie设置了禁用当然无法创建对象了