fineuploader使用实例
1、Fine Uploader特点
Fine Uploader Features:
A:支持文件上传进度显示.
B:文件拖拽浏览器上传方式
C:Ajax页面无刷新.
D:多文件上传.
F:跨浏览器.
E:跨后台服务器端语言.
2、页面前端代码
<div id="btnUpload"></div>
$(function () { $('#btnUpload').fineUploader({ request: { endpoint: 'Handler/UpLogo.ashx' }, validation: { allowedExtensions: ['jpeg', 'jpg', 'png'] }, multiple: false, text: { uploadButton: '<div>上传头像</div>' } }).on('complete', function (event, id, fileName, responseJson) { if (responseJson.success) { $("#absoluteUrl").val(responseJson.path); $("#jcrop_target").attr("src", responseJson.url); $("#jcrop_target").css({ "width": 300, "height": 300 }); $("#preview").attr("src", responseJson.url); $("#preview").css({ "width": 100, "height": 100 }); ias.update(); } }); });
2、Handler文件代码
<%@ WebHandler Language="C#" Class="UpLogo" %> using System; using System.Web; using System.IO; using System.Text; using System.Net; using System.Data; using System.Collections; using System.Collections.Generic; using System.Drawing; using ECS.Utility; public class UpLogo : IHttpHandler { public void ProcessRequest(HttpContext context) { context.Response.ContentType = "text/plain"; if (context.Request != null && context.Request.Files.Count > 0) { var HttpFile = context.Request.Files[0]; var allowedExt = new List<string> { ".jpg", ".gif", ".bmp", ".png" }; var fileExt = Path.GetExtension(HttpFile.FileName).ToLower(); var File_Name = Path.GetFileNameWithoutExtension(HttpFile.FileName); var toFileName = Guid.NewGuid().ToString() + fileExt; var toFileFullPath = context.Server.MapPath("~/UpFiles/UserTemFace/"); var viewPath = "/UpFiles/UserTemFace/"; var Title = File_Name; DirectoryInfo di = new DirectoryInfo(toFileFullPath); if (!di.Exists) { di.Create(); } ECS.Model.A_User Model = new ECS.BLL.A_User().GetModel(ValUtil.GetUserID()); if (Model != null) { //toFileName = Model.UserFaceImg; string saveFile = toFileFullPath + toFileName; //先删除临时文件 //var _filePath = toFileFullPath + "\\" + toFileName; //if (File.Exists(_filePath)) //{ // FileInfo fi = new FileInfo(_filePath); // if (fi.Attributes.ToString().IndexOf("ReadOnly") != -1) // { // fi.Attributes = FileAttributes.Normal; // } // File.Delete(_filePath); //} HttpFile.SaveAs(saveFile); Model.UserFaceImg = toFileName; new ECS.BLL.A_User().Update(Model); } string imgeUrl = ""; if (fileExt.ToLower().Equals(".jpg") || fileExt.ToLower().Equals(".gif") || fileExt.ToLower().Equals(".bmp") || fileExt.ToLower().Equals(".png")) { imgeUrl = viewPath + toFileName; } else { context.Response.Write("{success:false,msg:'只能上传图片类型的文件'}"); context.Response.End(); return; } string url = viewPath + "/" + toFileName; context.Response.Write(new System.Web.Script.Serialization.JavaScriptSerializer().Serialize(new { success = true, url = url, path = toFileName })); context.Response.End(); } else { context.Response.Write(new System.Web.Script.Serialization.JavaScriptSerializer().Serialize(new { success = false })); context.Response.End(); } } public bool IsReusable { get { return false; } } }
fineuploader使用实例的更多相关文章
- 最近学习工作流 推荐一个activiti 的教程文档
全文地址:http://www.mossle.com/docs/activiti/ Activiti 5.15 用户手册 Table of Contents 1. 简介 协议 下载 源码 必要的软件 ...
- fineuploader 上传jquery 控件
fineuploader 昨天用的一个jquery插件. 可参考这篇文章以前写的 file-uploader 跟 这个跟里面介绍的2个jquery 插件相比.觉得更强大写..版本号都3.9 了….. ...
- 理清fineuploader无刷新上传的一些事
1.fineuploader是一款不依赖与jquery的异步无刷新上传组件,fineuploader采用ajax方式实现对文件上传,返回值都是以json的格式,对后台服务器操作和前端dom对象一些操作 ...
- js-静态、原型、实例属性
本篇来说一下js中的属性: 1.静态属性 2.原型属性 3.实例属性 静态属性: function klass(){} var obj=new klass(); klass.count=0; klas ...
- ZIP压缩算法详细分析及解压实例解释
最近自己实现了一个ZIP压缩数据的解压程序,觉得有必要把ZIP压缩格式进行一下详细总结,数据压缩是一门通信原理和计算机科学都会涉及到的学科,在通信原理中,一般称为信源编码,在计算机科学里,一般称为数据 ...
- EntityFramework Core 1.1是如何创建DbContext实例的呢?
前言 上一篇我们简单讲述了在EF Core1.1中如何进行迁移,本文我们来讲讲EF Core1.1中那些不为人知的事,细抠细节,从我做起. 显式创建DbContext实例 通过带OnConfiguri ...
- redis集成到Springmvc中及使用实例
redis是现在主流的缓存工具了,因为使用简单.高效且对服务器要求较小,用于大数据量下的缓存 spring也提供了对redis的支持: org.springframework.data.redis.c ...
- 流程开发Activiti 与SpringMVC整合实例
流程(Activiti) 流程是完成一系列有序动作的概述.每一个节点动作的结果将对后面的具体操作步骤产生影响.信息化系统中流程的功能完全等同于纸上办公的层级审批,尤其在oa系统中各类电子流提现较为明显 ...
- UWP开发之Template10实践:本地文件与照相机文件操作的MVVM实例(图文付原代码)
前面[UWP开发之Mvvmlight实践五:SuspensionManager中断挂起以及复原处理]章节已经提到过Template10,为了认识MvvmLight的区别特做了此实例. 原代码地址:ht ...
随机推荐
- JavaScript之惰性函数
前不久看到javascript的性能优化的这里,有关惰性函数 假如同一个函数有许多判断来检测函数,而我们每一次调用,都会判断检测函数 例如: function addEvent (type, elem ...
- 【转】PE详解
参考网址: http://blog.tianya.cn/listcate-4259222-2269876-1.shtml PE文件
- win10安装elementary os双系统
elementary os是ubuntu的一个分支,界面有点像苹果,比较漂亮.如图: 从已有的磁盘中划出一块空白分区,将elementary单独安装在这个分区里,这个分区需要比其他分区的剩余空间都要大 ...
- 免费 Https 证书(Let's Encrypt)申请与配置
之前要申请免费的 https 证书操作步骤相当麻烦,今天看到有人在讨论,就搜索了一下.发现现在申请步骤简单多了. 1. 下载 certbot git clone https://github.com/ ...
- Zabbix Agent active主动模式监控
zabbix_server端当主机数量过多的时候,由Server端去收集数据,Zabbix会出现严重的性能问题,主要表现如下: 1.当被监控端到达一个量级的时候,Web操作很卡,容易出现502 2.图 ...
- Mybatis查询,resultMap="Map" 查询数据有空值,导致整个map为空的问题
解决方法,不要使用Map接收,使用HashMap或者LinkHashMap,都可以. resultMap="Map" 替换为: resultMap="HashMap&qu ...
- CentOS 设置网络(修改IP&修改网关&修改DNS)
CentOS修改IP地址 # ifconfig eth0 192.168.1.80 这样就把IP地址修改为192.168.1.80(如果发现上不了网了,那么你可能需要把网关和DNS也改一下,后面会提到 ...
- docker容器安装及使用技巧
关于docker前言 A)首先是关于虚拟化 虚拟化我们可以简单的理解为一种资源管理方式.有如下几种虚拟化的方式: 1.完全虚拟化:对底层硬件实现完全的虚拟.例如:Vmware Workstation ...
- Visual Studio 2017 Enterprise 发布 15.3.2 版,附离线安装包下载。
Visual Studio 2017 Enterprise 更新至 15.3.2 ,本安装包使用微软原版安装文件,配合layout指令全量下载后制作,内置中文语言包,包含 Visual Studio ...
- Spring 依赖注入的理解
首先: 1.依赖注入就是一种在一个需要使用它的类中定义一个接口,该类中不管这个接口是怎么实现的,只是执行这个方法 2.依赖注入可以让该类实现通用 代码: 1.定义一个饮料接口 package cn.l ...