文件无刷新上传并获取保存到服务器端的路径

遇到上传文件的问题,结合之前用到过的swfUpload,又找了一个无刷新上传文件的jquery插件uploadify,写篇博客记录一下分别介绍这两个插件的实现方法

  1. swfUpload
  • 导入swfUpload的开发包
  • 添加js引用,引用swfUpload.js与handler.js文件,如果对swfUpload不了解、有疑问可以看看这篇博客
  • 页面初始化

  • 修改handler.js文件中 上传成功的事件,serverData是服务器端的响应

  1. Uploadify
  • 导入uploadify开发包,从官网下载,官网文档,中文文档,官网示例
  • 添加js与css的引用,jquery.uploadify.js 、uploadify.css

    (注:在css中引用uploadify-cancel.png图片文件的路径是可能不正确,可以在uploadify.css文件中自己进行更改)

  • 页面初始化

    页面初始化时,可以指定许多设置,并对上传成功的事件进行重载,data表示服务器端的响应

  • 服务器端上传处理程序

  1     /// <summary>
  2     /// 上传文件  3 /// </summary>  4 public class UploadFileHandler : IHttpHandler, IRequiresSessionState  5  {  6 public void ProcessRequest(HttpContext context)  7  {  8 context.Response.ContentType = "text/plain";  9 //验证上传权限  10 if (context.Session["User"] == null)  11  {  12 context.Response.Write("no permission");  13  context.Response.End();  14 return;  15  }  16 try  17  {  18 //获取上传文件  19 //Filedata是客户端已经定义好的,如果想要更改,更改js文件中的配置  20 HttpPostedFile image_upload = context.Request.Files["Filedata"];  21 //获取文件扩展名  22 string fileExt = System.IO.Path.GetExtension(image_upload.FileName).ToLower();  23 //验证文件扩展名是否符合要求,是否是允许的图片格式  24 if (!FileTypes.IsAllowed(fileExt))  25  {  26 return;  27  }  28 //当前时间字符串  29 string timeString = DateTime.Now.ToString("yyyyMMddHHmmssfff");  30 //保存虚拟路径构建  31 string path = "/Upload/" + timeString + fileExt;  32 //获取、构建要上传文件的物理路径  33 string serverPath = context.Server.MapPath("~/" + path);  34 //保存图片到服务器  35  image_upload.SaveAs(serverPath);  36 //输出保存路径  37  context.Response.Write(path);  38  }  39 catch (Exception ex)  40  {  41 context.Response.Write("Error");  42 //记录日志  43 new Common.LogHelper(typeof(UploadFileHandler)).Error(ex);  44  }  45  }  46  47 public bool IsReusable  48  {  49 get  50  {  51 return false;  52  }  53  }  54  }  55 public static class FileTypes  56  {  57 private static List<string> allowedFileTypes = new List<string>();  58 //获取允许json配置文件  59 private static string jsonFilePath = Common.PathHelper.MapPath("~/AllowedFileTypes.json");  60  61 /// <summary>  62 /// 允许的文件类型  63 /// </summary>  64 public static List<string> AllowedFileTypes  65  {  66 get  67  {  68 return allowedFileTypes;  69  }  70  71 set  72  {  73 allowedFileTypes = value;  74  }  75  }  76  77 /// <summary>  78 /// 静态构造方法  79 /// </summary>  80 static FileTypes()  81  {  82 

转载于:https://www.cnblogs.com/weihanli/p/fileUploadWithoutRefresh.html

文件无刷新上传(swfUpload与uploadify)相关推荐

  1. form表单刷新_《大胖 ? 小课》- 不用 js 实现文件无刷新上传

    这是<大胖小课>栏目的专题一<说说文件上传那些事儿>的第3节-<不用 js 实现文件无刷新上传> 专题已经更新章节: <大胖 • 小课>- 我是这样理解 ...

  2. ajax上传文件表单,图片、文件无刷新上传,jquery.form.js的使用

    我们在进行一些web开发时,有时会需要上传文件,图片等等的功能.这篇文章记录一下我实现用ajax实现无刷新上传图片的方法. 我们先要了解一下ajax,在前后端分离的开发环境中ajax被广泛的用原来前后 ...

  3. java无刷新上传图片_【java实现web文件无刷新上传】

    最近在做如何实现文件上传的相关工作,查阅了很多资料,发现网上写的都不是很直观,且调试复杂,经实验成功. 把form的target设为页面里一个看不见的iframe,这样上传时候就不会刷新页面了,比如 ...

  4. java上传刷新_用ajaxfileupload实现无刷新上传的代码示例

    本篇文章主要介绍了SpringMVC结合ajaxfileupload实现文件无刷新上传,具有一定的参考价值,感兴趣的小伙伴们可以参考一下. jQuery没有提供ajax的文件上传,我们可以通过ajax ...

  5. jQuery+php+ajax实现无刷新上传文件功能

    2019独角兽企业重金招聘Python工程师标准>>> jQuery+php+ajax实现无刷新上传文件功能,还带有上传进度条动画效果,支持图片.视频等大文件上传. js代码: &l ...

  6. 利用iframe无刷新上传文件的坑

    利用iframe无刷新上传文件的坑 原文:利用iframe无刷新上传文件的坑 页面里经常要用到文件上传的功能,而且要求页面不刷新,先说一下原理:页面里放一个file控件和submit按钮,外面用for ...

  7. Sring3MVC页面无刷新上传文件

    Sring3MVC页面无刷新上传文件 首先,这个框架是利用Ajax与Ctroller进行表单提交和数据交互的,但是Ajax是无法支持File上传的,所以在这里我使用了隐藏的Iframe来做文件上传的数 ...

  8. php 无刷新上传,php 无刷新上传文件的代码

    php 无刷新上传文件. 有兴趣的朋友,可以参考下:php iframe无刷新上传文件的实现代码 . 1.上传页面 复制代码 代码示例: 无刷新上传文件 function startUpload() ...

  9. ajax页面无刷新上传文件

    最近在研究struts2文件上传,感觉这块无论是做企业网站还是做系统都用的挺多的,尤其是图片上传.但是上传我们又有几种方式,一种是表单提交,一种是ajax无刷新上传. 这次我要介绍的就是struts2 ...

最新文章

  1. 登录linux后台工具,linux后台进程管理工具-supervisor
  2. 轻有力读后感ppt_如果您希望招聘人员认真对待您,请建立强有力的个人叙述。...
  3. PHP获取重定向URL的几种方法
  4. Coursera吴恩达《神经网络与深度学习》课程笔记(4)-- 浅层神经网络
  5. 功能Java示例 第7部分–将失败也视为数据
  6. 我个人的CRUD故事-或我如何来到CUBA平台
  7. 30人的产研团队如何高效协同?
  8. CMake使用介绍(1)
  9. python时间戳_Python-强大的模块功能库-No11
  10. 能过ChilkatDotNet4.dll组件,开发SFTP,上传下载功能。
  11. 网上讨论“电商平台打败了实体店”?
  12. 作为技术工程师,到底需要怎样的专业能力
  13. pythonunicode和str_python unicode 和 str 类型的关系
  14. OGG 实现两台Oracle数据库的同步
  15. matlab 平滑曲线连接_如何使用Affinity Designer for mac编辑矢量曲线和形状
  16. 计算机网络经典面试题:在浏览器中输入URL并按下回车后会发生什么?
  17. 初识华为MDC智能驾驶计算平台
  18. ctcpejmu单词_微生物英文单词
  19. ps大图缩小让小图更清晰
  20. 基于Unity3D的相机功能的实现(六)—— 上帝视角(王者荣耀视角)

热门文章

  1. 掌握 ASP.NET 之路:自定义实体类简介 来源 :msdn
  2. NodeJS+Express+Mysql+MongoDB之环境配置
  3. 本文详解5G是个什么鬼,程序员都准备好了吗?
  4. 从运维角度浅谈MySQL数据库优化
  5. 《众妙之门——网页排版设计制胜秘诀》——3.4 展现品牌视觉的同时保持网页的可读性...
  6. module_param 在内核编程中的作用
  7. HALCON示例程序color_fuses_lut_trans.hdev通过颜色对保险丝进行分类
  8. 第五章 - 图像形态学 - 基于图像金字塔的图像分割(cvPyrSegmentation)
  9. java 生成 tar.gz_一文教您如何通过 Java 压缩文件,打包一个 tar.gz Filebeat 采集器包...
  10. nohup命令输出日志_逼格高又实用的Linux高级命令,开发运维都要懂