A-A+
jquery uploadify插件实现上传文件进度条效果
jquery uploadify插件是一个文件上传插件了,它可以配置脚本来实现文件上传了,下面小编来看看jquery uploadify插件实现上传文件进度条效果例子吧,希望文章对各位带来帮助。
一、jquery进度条代码:
- <%@ Page Language="C#" AutoEventWireup="true" CodeFile="UpLoad.aspx.cs" Inherits="UploadifyDemo_UpLoad" %>
- <html xmlns="http://www.w3.org/1999/xhtml">
- <head id="Head1" runat="server">
- <link href="js/jquery.uploadify-v2.1.4/uploadify.css" rel="stylesheet" type="text/css" />
- <script type="text/javascript" src="js/jquery.uploadify-v2.1.4/jquery-1.4.2.min.js"></script>
- <script type="text/javascript" src="js/jquery.uploadify-v2.1.4/swfobject.js"></script>
- <script type="text/javascript" src="js/jquery.uploadify-v2.1.4/jquery.uploadify.v2.1.4.min.js"></script>
- <script type="text/javascript">
- $(document).ready(function () {
- $("#uploadify").uploadify({
- 'uploader': 'js/jquery.uploadify-v2.1.4/uploadify.swf', //uploadify.swf文件的路径
- 'script': 'UploadHandler.ashx', //处理文件上传的后台脚本的路径
- 'cancelImg': 'js/jquery.uploadify-v2.1.4/cancel.png',
- 'folder': 'UploadFile/<% = subpathName %>', //上传文件夹的路径
- 'queueID': 'fileQueue', //页面中,你想要用来作为文件队列的元素的id
- 'auto': false, //当文件被添加到队列时,自动上传
- 'multi': true, //设置为true将允许多文件上传
- 'fileExt': '*.jpg;*.gif;*.png', //允许上传的文件后缀
- 'fileDesc': 'Web Image Files (.JPG, .GIF, .PNG)', //在浏览窗口底部的文件类型下拉菜单中显示的文本
- 'sizeLimit': 102400, //上传文件的大小限制,单位为字节 100k
- 'onCancel': function (event, ID, fileObj, data) { //当从上传队列每移除一个文件时触发一次
- alert('The upload of ' + fileObj.name + ' has been canceled!');
- },
- 'onComplete': function (event, ID, fileObj, response, data) { //每完成一次文件上传时触发一次
- alert('There are ' + data.fileCount + ' files remaining in the queue.');
- },
- 'onAllComplete': function (event, data) { //当上传队列中的所有文件都完成上传时触发
- alert(data.filesUploaded + ' files uploaded successfully!');
- }
- });
- });
- </script>
- </head>
- <body>
- <form id="form1" runat="server">
- <div>
- </div>
- </form>
- <div id="fileQueue"></div>
- <input type="file" name="uploadify" id="uploadify" />
- <p>
- <a href="javascript:$('#uploadify').uploadifyUpload()">上传</a>|
- <a href="javascript:$('#uploadify').uploadifyClearQueue()">取消上传</a>
- </p>
- </body>
- </html>
二、后端程序代码,产生jquery进度条的数据源:
- <%@ WebHandler Language="C#" Class="UploadHandler" %>
- using System;
- using System.Web;
- using System.IO;
- public class UploadHandler : IHttpHandler
- {
- public void ProcessRequest(HttpContext context)
- {
- context.Response.ContentType = "text/plain";
- context.Response.Charset = "utf-8";
- HttpPostedFile file = context.Request.Files["Filedata"];
- string uploadPath = HttpContext.Current.Server.MapPath(@context.Request["folder"]);
- if (file != null)
- {
- if (!Directory.Exists(uploadPath))
- {
- Directory.CreateDirectory(uploadPath);
- }
- file.SaveAs(Path.Combine(uploadPath, file.FileName));
- context.Response.Write("1");
- }
- else
- {
- context.Response.Write("0");
- }
- }
- public bool IsReusable
- {
- get
- {
- return false;
- }
- }
- }