ajax上传文件

 //多文件上传
function  multiFileupload ( type , elementId ){
            ajaxRemoveSessionPropress  (); //每次获取进度之前先清除之前的进度
             $ .  ajaxFileUpload ({   
            url  :  '../progressUtis/multiFileupload.do' , // servlet请求路径 
            secureuri  :  false ,  //安全协议
            fileElementId  :  'fileToUpload_' + elementId , // 上传控件的id 
            dataType  :  'json' ,  //数据类型
            data  :  { "type"  :  type },  // 其它请求参数   
            success  :  function ( data )  {    
                        multiFileupload_success  ( data  , elementId  );
             }
              });  
            
             $ (  "#progressDiv_" + elementId ). width ( "0%"  );  //设置进度条为0%
             $ (  '#fileToUpload_' + elementId ). attr ( 'disabled'  , "true"  ); //设置版本file选择禁用
             $ (  'input[type="file"]' ). attr ( 'disabled'  , "true"  ); //所有的file对象禁止上传
            
             $ (  "#submitBut" ). attr ( "disabled"  , "true"  ); //禁止提交表单
             $ (  "#resetBut" ). attr ( 'disabled'  , 'true'  ); //禁止重置 
             $ (  "#collore_submit" ). hide ();  //隐藏提交表单按钮
      $  ( "#upload_msg_"  + elementId  ). text  ( "上传文件中,当前进度:"  );
      $  ( "#down_url_"  + elementId  ). val  ( null ); //设置初始值
      $  ( "#file_size_"  + elementId  ). val  ( null ); //设置初始值
      $  ( "#file_type_"  + elementId  ). val  ( null );  //设置初始值
      $ (  "#proHtml_" + elementId ). text ( null  ); //设置为0
               if (  type ==  2 ){
                                     $ (  "#tag_title" ). attr ( "disabled"  , "true"  ); //禁止输入文本框
               }
               ajaxMultiGetProgress  ( elementId  ); //从新读取进度  
}
//多文件上传的回调函数
function  multiFileupload_success ( json_msg , elementId ){   
                                                   $ (  "#down_url_" + elementId ). text ( json_msg . down_url ); //用户展示
                                   $ (  "#file_size_" + elementId ). text ( json_msg . file_size ); //用户展示
                                   $ (  "#file_type_" + elementId ). text ( json_msg . file_type );  //用户展示
                                  
                                   $ (  "#f_down_url_" + elementId ). val ( json_msg . down_url ); //表单提交
                                   $ (  "#f_file_size_" + elementId ). val ( json_msg . file_size ); //表单提交
                                       $ (  "#f_file_type_" + elementId ). val ( json_msg . file_type ); //表单提交
                                  
                                   
                                   $ (  '#fileToUpload_' + elementId ). removeAttr ( "disabled"  ); //选择标题音频file可用
                                   $ (  'input[type="file"]' ). removeAttr ( "disabled"  ); //所有的file对象禁止上传
                                     
                                                   $ (  "#submitBut" ). removeAttr ( "disabled"  ); //可用提交表单
                                                   $ (  "#resetBut" ). removeAttr ( "disabled"  ); //可用重置表单
                                                   $ (  "#collore_submit" ). show (); //显示提交表单按钮
                                                   $ (  "#progressDiv_" + elementId ). width ( "100%"  );  //设置进度条为100% 
                                                    if (  type ==  2 ){
                                                                                     $ (  "#tag_title" ). removeAttr ( "disabled"  ); //禁止输入文本框
                                                   }
                                           $ (  "#upload_msg_" + elementId ). text ( "上传完成  "  );
}    

//多文件上传实时获取上传进度
function  ajaxMultiGetProgress ( elementId )  { //局部请求获取上传进度  
                          $ .  ajax ({
                                             type : "post" ,
                                             url :  "../progressUtis/getPro.do"  ,
                                             data :  null ,
                                             dataType : "json" ,    
                                             success :  function  ( data  )  {    
                                                 setingMultiProgress ( data , elementId );
                                                  }
                          }  );    
}  
//设置当前多文件上传的进度条信息
function  setingMultiProgress ( progress , elementId ){  
                         $ (  "#progressDiv_" + elementId ). width ( progress );  
                                      var  spanTxt  = $  ( "#proHtml_"  + elementId  );  
                              var  div_width  =  $ (  "#progressDiv_" + elementId ). width ();      
                                      if (  progress ==  null ){
                                                             spanTxt . text  ( "0%"  );
                                      } else {
                                                             spanTxt . text  ( progress  );
                              }     
                            timerId  =  setTimeout  ( "ajaxMultiGetProgress('"  + elementId  + "')"  ,  1000 );    
                                      if (  div_width ==  516 ){   
                                                clearInterval  ( timerId  );
                                      }  
  }






 

//移除session中的进度信息
function  ajaxRemoveSessionPropress (){
                         $ .  ajax ({
                                             type : "post" ,
                                             url :  "../progressUtis/remPro.do"  ,
                                             data :  null ,
                                             dataType : "json" ,    
                                             success :  function  ( data  )  {}  //清除session中的进度
                          }  );  
}
 
//多文件上传
function  multiFileupload ( type , elementId ){
            ajaxRemoveSessionPropress  (); //每次获取进度之前先清除之前的进度
             $ .  ajaxFileUpload ({   
            url  :  '../progressUtis/multiFileupload.do' , // servlet请求路径 
            secureuri  :  false ,  //安全协议
            fileElementId  :  'fileToUpload_' + elementId , // 上传控件的id 
            dataType  :  'json' ,  //数据类型
            data  :  { "type"  :  type },  // 其它请求参数   
            success  :  function ( data )  {    
                        multiFileupload_success  ( data  , elementId  );
             }
              });  
            
             $ (  "#progressDiv_" + elementId ). width ( "0%"  );  //设置进度条为0%
             $ (  '#fileToUpload_' + elementId ). attr ( 'disabled'  , "true"  ); //设置版本file选择禁用
             $ (  'input[type="file"]' ). attr ( 'disabled'  , "true"  ); //所有的file对象禁止上传
            
             $ (  "#submitBut" ). attr ( "disabled"  , "true"  ); //禁止提交表单
             $ (  "#resetBut" ). attr ( 'disabled'  , 'true'  ); //禁止重置 
             $ (  "#collore_submit" ). hide ();  //隐藏提交表单按钮
      $  ( "#upload_msg_"  + elementId  ). text  ( "上传文件中,当前进度:"  );
      $  ( "#down_url_"  + elementId  ). val  ( null ); //设置初始值
      $  ( "#file_size_"  + elementId  ). val  ( null ); //设置初始值
      $  ( "#file_type_"  + elementId  ). val  ( null );  //设置初始值
      $ (  "#proHtml_" + elementId ). text ( null  ); //设置为0
               if (  type ==  2 ){
                                     $ (  "#tag_title" ). attr ( "disabled"  , "true"  ); //禁止输入文本框
               }
               ajaxMultiGetProgress  ( elementId  ); //从新读取进度  
}
//多文件上传的回调函数
function  multiFileupload_success ( json_msg , elementId ){   
                                                   $ (  "#down_url_" + elementId ). text ( json_msg . down_url ); //用户展示
                                   $ (  "#file_size_" + elementId ). text ( json_msg . file_size ); //用户展示
                                   $ (  "#file_type_" + elementId ). text ( json_msg . file_type );  //用户展示
                                  
                                   $ (  "#f_down_url_" + elementId ). val ( json_msg . down_url ); //表单提交
                                   $ (  "#f_file_size_" + elementId ). val ( json_msg . file_size ); //表单提交
                                       $ (  "#f_file_type_" + elementId ). val ( json_msg . file_type ); //表单提交
                                  
                                   
                                   $ (  '#fileToUpload_' + elementId ). removeAttr ( "disabled"  ); //选择标题音频file可用
                                   $ (  'input[type="file"]' ). removeAttr ( "disabled"  ); //所有的file对象禁止上传
                                     
                                                   $ (  "#submitBut" ). removeAttr ( "disabled"  ); //可用提交表单
                                                   $ (  "#resetBut" ). removeAttr ( "disabled"  ); //可用重置表单
                                                   $ (  "#collore_submit" ). show (); //显示提交表单按钮
                                                   $ (  "#progressDiv_" + elementId ). width ( "100%"  );  //设置进度条为100% 
                                                    if (  type ==  2 ){
                                                                                     $ (  "#tag_title" ). removeAttr ( "disabled"  ); //禁止输入文本框
                                                   }
                                           $ (  "#upload_msg_" + elementId ). text ( "上传完成  "  );
}    

//多文件上传实时获取上传进度
function  ajaxMultiGetProgress ( elementId )  { //局部请求获取上传进度  
                          $ .  ajax ({
                                             type : "post" ,
                                             url :  "../progressUtis/getPro.do"  ,
                                             data :  null ,
                                             dataType : "json" ,    
                                             success :  function  ( data  )  {    
                                                 setingMultiProgress ( data , elementId );
                                                  }
                          }  );    
}  
//设置当前多文件上传的进度条信息
function  setingMultiProgress ( progress , elementId ){  
                         $ (  "#progressDiv_" + elementId ). width ( progress );  
                                      var  spanTxt  = $  ( "#proHtml_"  + elementId  );  
                              var  div_width  =  $ (  "#progressDiv_" + elementId ). width ();      
                                      if (  progress ==  null ){
                                                             spanTxt . text  ( "0%"  );
                                      } else {
                                                             spanTxt . text  ( progress  );
                              }     
                            timerId  =  setTimeout  ( "ajaxMultiGetProgress('"  + elementId  + "')"  ,  1000 );    
                                      if (  div_width ==  516 ){   
                                                clearInterval  ( timerId  );
                                      }  
  }






 

//移除session中的进度信息
function  ajaxRemoveSessionPropress (){
                         $ .  ajax ({
                                             type : "post" ,
                                             url :  "../progressUtis/remPro.do"  ,
                                             data :  null ,
                                             dataType : "json" ,    
                                             success :  function  ( data  )  {}  //清除session中的进度
                          }  );  
}




function test(){
     alert("每隔1秒就执行test方法");
var timerId =  setTimeout  ( 'test() ' ,  1000 );   //定时器

int count=0;
count++;
if(count>10){
     clearInterval( timerId  );//清除当前的定时器
}

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值