jquery-Uploadify上传控件和FTP上传下载删除(含断点续传)

备注:次随笔简单介绍uploadify单、多附件上传,错误提示信息和选择附件后回传附件名称功能。

Uploadify是JQuery的一个上传插件
 第一:引用js 文件


第二:view层代码 ---uploadify上传方法;
  

//uploadify 上传方法
      $('#fileInput1').uploadify({
          'uploader': '/Content/javascript/jQuery/Uploadify/uploadify.swf', //浏览按钮swf
          'script': 'AttachmentUpload.aspx',    //调用 controler 上传方法
          'cancelImg': '/Content/javascript/jQuery/Uploadify/cancel.png', // 取消图片
          'fileExt': '*.*',                   //过滤类型-可以上传所有
          'fileDesc': '*.*',                  //提示信息          
          'sizeLimit': 1024 * 1024 * 10,       //10M
          'multi': true, //是否批量
          //          'onSelect': UpSelect,
          'onComplete': UpComplete,
          'onAllComplete': AllComplete,
          //'buttonImg': '/Content/javascript/jQuery/Uploadify/add1.jpg',                    
          'buttonText': '添加',
          'height': 30,
          'width': 110

      });

 



第三:controler里面方法:调用AttachmentUpload()

     

HttpPostedFile fileData = null;        
        [AccessibleThrough(Verb.Post)]
        public void AttachmentUpload(string p_oldFileName, string type)
        {
          //生成 【上传路径+上传名称】后,返回
          
         }

 



第四:根据返回值 放在view层隐藏字段,提交表单,保存DB。

 

//选择一个附件(选择上传附件后的将附件名称回调回来,方便填写附件信息)
    function UpSelect(event, queueID, fileObj) {
        var name = fileObj.name.split('.');
        var ul = document.getElementById("divfileinfo").getElementsByTagName("ul")[0];
        var li = document.createElement("li");
        li.setAttribute("class", "upload_file_info");
        li.setAttribute("id", queueID);
        var divv = "";
        divv = " <div class=\"upload_file_info_title blue\"> 填写文档信息</div><div class=\"upload_div_list\">" + "<div class=\"upload_file_info_name\">" + "<b

class=\"red\">*</b><span>标题:</span><input name=\"tit" + queueID + "\" class=\"select_long\" value=\"" + name[0] + "\" /></div><div class=\"upload_file_info_text\">简介:

<textarea name=\"tat" + queueID + "\"></textarea></div></div><input type=\"hidden\" name=\"Size" + queueID + "\" value=\"" + fileObj.size + "\" /> <input type=\"hidden\"

name=\"Ext" + queueID + "\" value=\"." + name[1] + "\" /> <input type=\"hidden\" name=\"FOLDER" + queueID + "\" id=\"FOLDER" + queueID + "\" value=\"\" /> ";
        li.innerHTML = divv;
        ul.appendChild(li);
        document.getElementById("spwait").innerHTML = parseInt(document.getElementById("spwait").innerHTML) + 1;
    }

 


    

//单附件上传完成后的操作
    function UpComplete(event, queueID, fileObj, response, data)
    {
        
          var strarry = response.toString().split(",");

        //(隐藏字段,存放附件名称和路径提交controller)
          $("#attachName").val($("#attachName").val() + strarry[0] + ",");
          $("#attachPath").val($("#attachPath").val() + strarry[1] + ",");

          //$("#frmofficailDoc").submit();(若单附件上传,在此提交)
      }

      //所有附件上传完成后的操作
      function AllComplete(event, queueID, fileObj, response, data)
      {
    
          $("#ErrorMesage").val(queueID.errors);//错误提示信息的 (隐藏字段提交controller)
         
          jQuery("#btnsubmit").click();(在搜狗、360浏览器提交表单时不支持,所有使用隐                   藏but,处罚click 提交表单)
              }

      }

 

 

    //提交表单
    function frmsunmit()
      {
          if(jQuery.formValidator.pageIsValid('1'))//分组验证
          {
           var upfiles = jQuery.trim($('#fileInput1Queue').html());//(判断是否上传附件)
           if (upfiles != "")()
           {
               // 参数传递实例
               //$('#fileInput1').uploadifySettings('scriptData', {'p_oldFileName': '' });(修改附件时,删除旧的)

               $('#fileInput1').uploadifyUpload();(附件不用上传也可以)
           }
           else
           {
               //$("#frmofficailDoc").submit();
               jQuery("#btnsubmit").click();(提交表单)
           }
        }
      }

 



 第五:提交表单,controller 参数

 public void Save([DataBind("R_officialDoc")]R_officialDocument R_offDoc,  string attachName, string attachPath, string ErrorMesage)
{
 参数:实体,附件名称,附件路径,错误提示消息
}

 ps:20130419 补充:具体参数参考:http://www.cnblogs.com/pinnasky/archive/2010/06/02/1750089.html

 参数参考及常见错误解析:http://www.cnblogs.com/luolei05/archive/2012/02/13/2349246.html

上传视频大小Webconfig配置:报 error I/O错误

<httpRuntime maxRequestLength="2097151" executionTimeout="120"  shutdownTimeout="120" />

如果是iis7以上的服务,则见下方:
1、打开IIS管理器,找到Default Web Site。先进行停止。
2、在IIS中双击“请求筛选”打开。
3、点击右边的“编辑功能设置”,打开“编辑请求筛选设置”对话框。
其中的允许的最大容量长度,默认是”30000000“,30M,将其修改为你所需要的大小即可。
4、启动IIS.

属性:上传文件大小及 开始、结束时间。

ps:20130422

ftp 上传 下载 删除

http://www.cnblogs.com/liushuijinger/archive/2013/04/22/3035026.html

 PS:断点续传知识 2013 1014

http://www.cnblogs.com/ASPNET2008/p/3360427.html

posted @ 2011-10-31 15:56  365lei  阅读(8852)  评论(1编辑  收藏  举报