国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > JavaScript > 正文

jquery插件uploadify實(shí)現(xiàn)帶進(jìn)度條的文件批量上傳

2019-11-20 11:01:38
字體:
供稿:網(wǎng)友

有時(shí)項(xiàng)目中需要一個(gè)文件批量上傳功能時(shí),個(gè)人認(rèn)為uploadify是快速簡便的解決方案,分享給大家供大家參考,具體如下

先上效果圖:

具體代碼如下:

在頁面中如下

完整頁面代碼

<%@ Page Language="C#" AutoEventWireup="true" CodeFile="Default.aspx.cs" Inherits="_Default" %><!DOCTYPE html><html xmlns="http://www.w3.org/1999/xhtml"><head runat="server"><meta http-equiv="Content-Type" content="text/html; charset=utf-8"/> <title>文件批量上傳Demo</title> <!--引入Jquery--> <script src="js/jquery-1.11.3.min.js"></script> <!--引入uploadify--> <script type="text/javascript" src="uploadify/jquery.uploadify.js"></script> <link type="text/css" href="uploadify/uploadify.css" rel="stylesheet" /> <script type="text/javascript">  $(function () {   var guid = '<%=Request["guid"] %>';   var type = '<%=Request["type"] %>';   if (guid == null || guid == "") {    guid = newGuid();   }   if (type != null) {    type = type + '/';   }   $('#file_upload').uploadify({    'swf': 'uploadify/uploadify.swf',    //FLash文件路徑    'buttonText': '瀏 覽',      //按鈕文本    'uploader': 'uploadhandler.ashx?guid=' + guid, //處理ASHX頁面    'formData': { 'folder': 'picture', 'isCover': 1 },   //傳參數(shù)    'queueID': 'fileQueue',      //隊(duì)列的ID    'queueSizeLimit': 10,       //隊(duì)列最多可上傳文件數(shù)量,默認(rèn)為999    'auto': false,         //選擇文件后是否自動(dòng)上傳,默認(rèn)為true    'multi': true,         //是否為多選,默認(rèn)為true    'removeCompleted': true,      //是否完成后移除序列,默認(rèn)為true    'fileSizeLimit': '0',       //單個(gè)文件大小,0為無限制,可接受KB,MB,GB等單位的字符串值    'fileTypeDesc': 'All Files',     //文件描述    'fileTypeExts': '*.*',       //上傳的文件后綴過濾器    'onQueueComplete': function (queueData) {  //所有隊(duì)列完成后事件     alert("上傳完畢!");    },    'onError': function (event, queueId, fileObj, errorObj) {     alert(errorObj.type + ":" + errorObj.info);    },    'onUploadStart': function (file) {    },    'onUploadSuccess': function (file, data, response) { //一個(gè)文件上傳成功后的響應(yīng)事件處理     //var data = $.parseJSON(data);//如果data是json格式     //var errMsg = "";    }   });  });  function newGuid() {   var guid = "";   for (var i = 1; i <= 32; i++) {    var n = Math.floor(Math.random() * 16.0).toString(16);    guid += n;    if ((i == 8) || (i == 12) || (i == 16) || (i == 20))     guid += "-";   }   return guid;  }  //執(zhí)行上傳  function doUpload() {   $('#file_upload').uploadify('upload', '*');  } </script></head><body> <form id="form1" runat="server" enctype="multipart/form-data">  <div id="fileQueue" class="fileQueue"></div>  <div>   <input type="file" name="file_upload" id="file_upload" />   <p>    <input type="button" class="shortbutton" id="btnUpload" onclick="doUpload()" value="上傳" />            <input type="button" class="shortbutton" id="btnCancelUpload" onclick="$('#file_upload').uploadify('cancel')" value="取消" />   </p>   <div id="div_show_files"></div>  </div> </form></body></html>

UploadHandler.ashx代碼:

using System;using System.Web;using System.IO;public class UploadHandler : IHttpHandler {  public void ProcessRequest (HttpContext context) {  context.Response.ContentType = "text/plain";  context.Request.ContentEncoding = System.Text.Encoding.GetEncoding("UTF-8");  context.Response.ContentEncoding = System.Text.Encoding.GetEncoding("UTF-8");  context.Response.Charset = "UTF-8";  if (context.Request.Files.Count > 0)  {   #region 獲取上傳路徑   string uploadFolder = GetUploadFolder();   #endregion   if (System.IO.Directory.Exists(uploadFolder))   {//如果上傳路徑存在    HttpPostedFile file = context.Request.Files["Filedata"];    string filePath = Path.Combine(uploadFolder, file.FileName);    file.SaveAs(filePath);    context.Response.Write("0");   }   else   {    context.Response.Write("2");   }  } }  public bool IsReusable {  get {   return false;  } } /// <summary> /// 返回不帶后綴的文件名 /// </summary> /// <param name="fileName"></param> /// <returns></returns> public static string GetFirstFileName(string fileName) {  return Path.GetFileNameWithoutExtension(fileName); } /// <summary> /// 獲取上傳目錄 /// </summary> /// <returns></returns> public static string GetUploadFolder() {  string rootPath = HttpContext.Current.Server.MapPath("~");  return Path.Combine(rootPath, "test"); }}

文件上傳.NET默認(rèn)有大小限制,像IIS限制的30M默認(rèn)請求大小。如果不想修改IIS,又想突破這個(gè)大小的限制,比如上傳1GB大小的文件。

這是修改Web.config即可實(shí)現(xiàn)。

<?xml version="1.0" encoding="utf-8"?><!-- --><configuration> <system.web>  <compilation debug="true" targetFramework="4.0" />  <httpRuntime maxRequestLength="1073741824"/> </system.web> <!--用于設(shè)置文件上傳的最大允許大小(單位:bytes)--> <system.webServer>  <security>  <requestFiltering>   <!--修改服務(wù)器允許最大長度(1GB)-->   <requestLimits maxAllowedContentLength="1073741824"/>  </requestFiltering>  </security> </system.webServer> </configuration>

希望本文所述對大家學(xué)習(xí)javascript程序設(shè)計(jì)有所幫助。

發(fā)表評(píng)論 共有條評(píng)論
用戶名: 密碼:
驗(yàn)證碼: 匿名發(fā)表
主站蜘蛛池模板: 大理市| 宾阳县| 韶山市| 普兰县| 广州市| 个旧市| 罗甸县| 融水| 上饶市| 古浪县| 霍林郭勒市| 林州市| 岳阳市| 托里县| 庆阳市| 安多县| 炉霍县| 泸溪县| 南靖县| 封丘县| 滦南县| 罗平县| 南和县| 襄垣县| 尼木县| 连云港市| 贺州市| 综艺| 晋江市| 建湖县| 嘉善县| 卢湾区| 随州市| 宜章县| 石门县| 阿勒泰市| 屏南县| 龙陵县| 黑水县| 洪雅县| 邵武市|