httppostedfile php,Uploadify - 一款jQuery的无刷新上传插件

上传功能在我们的程序中是经常会用到的,而传统的http上传在安全性和文件大小上都会有一定的限制,而且不能看到上传进度。所以就出现了采用Flash和其他一些方式来实现人性化的上传效果。 那么今天我要给大家介绍额就是一款jQuery的无刷新上传插件 -Uploadify,他有免费版和收费版两种,免费版的是用Flash实现的,而收费版的是用html5实现的

优秀的jQuery无刷新上传插件Uploadify图片预览

3e02997d13939f2a6c117bfc8428f7b3.png

优秀的jQuery无刷新上传插件Uploadify浏览器适配

支持Chrome所有版本

支持Firefox所有版本

支持Safari所有版本

支持IE及以上版本

优秀的jQuery无刷新上传插件Uploadify使用教程

接下来我就来介绍一下免费版的 Uploadify。

环境要求jQuery 的版本为 1.4.x 或者以上版本

Flash Player 的版本为 9.0.24 或者更高版本

一门服务端语言 PHP, ASP.Net, Cold Fusion, 或者类似的服务端语言

使用步骤

1、下载 Uploadify压缩包

2、解压文件,将以下的文件复制到自己的网站中

jquery.uploadify-3.1.min.js

uploadify.swf

uploadify.css

uploadify-cancel.png

在这里需要注意的是还有一个文件,是处理后台接收的,官方给的是PHP的Demo,所以如果你的程序是PHP的话,就将 uploadify.php 一同复制到自己的网站中,如果是其他语言的话则复制对应的后台处理文件,下面我会给出NET版本的源码。

3、引入以下js和css文件

4、在页面中添加一个file文本框

5、加入以下代码初始化插件

$(function() {

$('#file_upload').uploadify({

'swf' : 'uploadify.swf',

'uploader' : 'uploadify.php'

// Put your options here

});

});

其中 swf 为 uploadify.swf 文件的路径

uploader 为 后台处理程序的路径

其它的参数大家可以参考 文档 在此我就不做讲述了

整个html文件类似下面的代码

My Uploadify Implementation

$(function() {

$('#file_upload').uploadify({

'swf' : 'uploadify.swf',

'uploader' : 'uploadify.php'

// Your options here

});

});

NET版本后台处理程序

这个是从网上找的,亲测可以使用,当然我们可以根据自己的需要做一些改变,比如文件保存的路径,文件名根据日期来命名等等。

using System;

using System.Data;

using System.Configuration;

using System.Collections;

using System.Web;

using System.Web.Security;

using System.Web.UI;

using System.Web.UI.WebControls;

using System.Web.UI.WebControls.WebParts;

using System.Web.UI.HtmlControls;

using System.IO;

namespace WebApplication2

{

public partial class Upload : System.Web.UI.Page

{

protected void Page_Load(object sender, EventArgs e)

{

HttpPostedFile file = Request.Files["FileData"];

string uploadpath = Server.MapPath(Request["folder"] + "\");

if (file != null)

{

if (!Directory.Exists(uploadpath))

{

Directory.CreateDirectory(uploadpath);

}

file.SaveAs(uploadpath + file.FileName);

Response.Write("1");

}

else

{

Response.Write("0");

}

}

}

}

查看更多

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
ASP.NET jQuery进度条上传是一种常见的网页上传文件功能。通过前端jQuery插件和后端ASP.NET技术,实现了文件上传过程中的进度条展示,提高了用户体验和操作效率。具体实现方式如下: 1. 前端实现 使用jQuery的ajaxForm插件,结合jQueryUI的progressbar插件,进行文件上传进度条的展示。在HTML页面上添加上传表单和进度条,通过ajaxForm设置表单提交事件,实现文件上传过程中进度条的实时更新。代码如下: ``` <form id="uploadForm" enctype="multipart/form-data" method="post" action="UploadFile.ashx"> <input type="file" name="fileUpload" /> <input type="submit" value="上传" /> </form> <div id="progressBar"></div> ``` ``` $("#uploadForm").ajaxForm({ beforeSend: function() { $("#progressBar").progressbar({ value: 0 }); }, uploadProgress: function(event, position, total, percentComplete) { $("#progressBar").progressbar({ value: percentComplete }); }, success: function() { $("#progressBar").progressbar({ value: 100 }); alert("上传成功!"); }, error: function() { alert("上传失败!"); } }); ``` 2. 后端实现 在ASP.NET中,通过HttpHandler实现文件上传处理,从request对象中获取上传的文件信息,根据文件大小和上传进度,实时更新进度条的值。代码如下: ``` <%@ WebHandler Language="C#" Class="UploadFile" %> using System; using System.Web; public class UploadFile : IHttpHandler { public void ProcessRequest (HttpContext context) { context.Response.ContentType = "text/plain"; HttpPostedFile file = context.Request.Files["fileUpload"]; int fileSize = file.ContentLength; int bytesRead = 0; byte[] buffer = new byte[8192]; using (System.IO.Stream stream = file.InputStream) using (System.IO.BinaryReader reader = new System.IO.BinaryReader(stream)) using (System.IO.MemoryStream ms = new System.IO.MemoryStream()) { double percentComplete = 0; int totalRead = 0; while ((bytesRead = reader.Read(buffer, 0, buffer.Length)) > 0) { ms.Write(buffer, 0, bytesRead); totalRead += bytesRead; percentComplete = (double)totalRead / fileSize * 100; context.Response.Write(percentComplete.ToString()); } } } public bool IsReusable { get { return false; } } } ``` 综上,ASP.NET jQuery进度条上传,通过前后端技术的组合应用,在网页上传过程中有效展示文件上传进度和结果,提升了用户的体验感和操作效率。

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值