页面代码:

<div id="fileQueuePlug"></div>
<input type="file" name="uploadifyplug" id="uploadifyplug" />
<a href="javascript:$('#uploadifyplug').uploadifyUpload();">上传</a> <input id="windowspathplug" type="hidden" value="" /> 脚本加载ckeditor插件并提交: $(function () {
$("#uploadifyplug").uploadify({
'uploader': '/Scripts/uploadify/uploadify.swf',
'script': '/ToolsAndPlug/UploadImage',
'cancelImg': '/Scripts/uploadify/uploadify-cancel.png',
'folder': '/Image/Uploads/ToolsOrPlug',
'queueID': 'fileQueuePlug',
'auto': false,
'multi': false,///设置true可实现多条上传
'fileExt': '*.jpg;*.png;*.jpeg;*.gif;*.bmp',
'fileDesc': '请选择图片类型文件',
'sizeLimit': 1024 * 1024 * 10,
'onSelect': function (e, queueId, fileObj) {
$("#uploadifyplug").uploadifySettings('scriptData', { 'windowspathjs': $("#windowspathplug").val() });
},
'onComplete': fun
});
});
function fun(event, queueId, fileObj, response, data) {
if (response != "") {
$.messager.show({
title: '提示',
msg: '上传成功',
timeout: 5000,
showType: 'slide'
});
var displaypath;
var windowspath;
var arr = new Array();
arr = response.split("|");
displaypath = arr[0];
windowspath = arr[1];
$("#plugortoolsimage").attr("value", displaypath);
$("#windowspathplug").attr("value", windowspath);
}
else {
$.messager.show({
title: '提示',
msg: '上传失败',
timeout: 5000,
showType: 'slide'
});
}
}
C#页面:

public ContentResult UploadImage(HttpPostedFileBase FileData, string folder, string windowspathjs = "")
{
///验证图片是否存在进行覆盖操作
if (windowspathjs != "")
{
if (System.IO.File.Exists(windowspathjs))
{
System.IO.File.Delete(windowspathjs);
}
}
///定义变量拼接图片的相对路径
string response = "";
///定义变量存储物理路径
string windowspath = "";
if (FileData != null)
{
///获取上传文件的后缀名
string fileExtension = Path.GetExtension(FileData.FileName);
///为上传的文件取新的名字含后缀
string buildName = DateTime.Now.ToString("yyyyMMddhhmmss") + fileExtension;
///生产文件存放的物理路径
string savepath = Request.MapPath("~" + folder + "/");
///检查物理路径是否存在,不存在则创建
if (!Directory.Exists(savepath))
{
Directory.CreateDirectory(savepath);
}
///拼接完成的文件物理路径含文件名
windowspath = savepath + buildName;
///保存文件
FileData.SaveAs(windowspath);
///拼接相对路径
response = "../.." + folder + "/" + buildName;
}
return Content(response + "|" + windowspath);
}

uploadify加ASP.NET MVC3.0上传文件(可多条)的更多相关文章

  1. asp.net mvc 实现上传文件带进度条

    本文乃是博主早期写的,此种思路虽然实现了,但固然不是最好的,仅做参考学习. 可以用js onprogress .fileinput .webuploader.jq ajaxsubmit等实现 思路:a ...

  2. ASP.NET Jquery+ajax上传文件(带进度条)

    效果图 支持ie6+,chrome,ie6中文文件名会显示乱码. 上传时候会显示进度条. 需要jquery.uploadify.js插件,稍后会给出下载 前台代码 <%@ Page Langua ...

  3. 前端AngularJS后端ASP.NET Web API上传文件

    本篇体验使用AngularJS向后端ASP.NET API控制器上传文件.    首先服务端: public class FilesController : ApiController { //usi ...

  4. asp.net限制了上传文件大小为..M,解决方法

    asp.net限制了上传文件大小为4M,在:在web.config里加下面一句,加在<System.web></System.web>之间如下:<system.web&g ...

  5. Servlet学习:(三)Servlet3.0 上传文件

    转: Servlet学习:(三)Servlet3.0 上传文件 2018年08月03日 11:57:58 iDark_CSDN 阅读数:362   一.注意事项 客户端(浏览器) 表单的提交方法必须是 ...

  6. ASP.NET跨服务器上传文件的相关解决方案

    第一种:通过FTP来上传文件 首先,在另外一台服务器上设置好FTP服务,并创建好允许上传的用户和密码,然后,在ASP.NET里就可以直接将文件上传到这台 FTP 服务器上了.代码如下: <%@ ...

  7. ASP.NET使用FileUpload上传文件

    前台代码: <asp:FileUpload ID="fuKeleyi" runat="server" /> <asp:Button ID=&q ...

  8. .Net core3.0 集成swagger5.0上传文件

    .Net core 3.0已经更新了,相信有挺多博主大佬们都更新了如何在.Net core3.0使用swagger,这里就不详细说了. 我们知道,如果.net core 2.x使用swagger上传文 ...

  9. 在asp.net 中怎样上传文件夹

    以ASP.NET Core WebAPI 作后端 API ,用 Vue 构建前端页面,用 Axios 从前端访问后端 API ,包括文件的上传和下载. 准备文件上传的API #region 文件上传  ...

随机推荐

  1. Xpath素材

    from lxml import etree text = """ <div> <ul> <li class="item-0&qu ...

  2. 【扩展事件】跟踪超过3秒的SQL

    msdn 扩展事件:点击打开链接 转自:https://blog.csdn.net/yenange/article/details/52592814 -- 删除事件会话 IF EXISTS(SELEC ...

  3. 关于this与e.target区别以及data-*属性

    1 this与event.target 在编写事件函数时可以传入一个event参数,even参数可以使用一个target属性如even.target用以调用,其作用是指向返回事件的目标节点(触发该事件 ...

  4. [LeetCode] 103. 二叉树的锯齿形层次遍历

    题目链接 : https://leetcode-cn.com/problems/binary-tree-zigzag-level-order-traversal/ 题目描述: 给定一个二叉树,返回其节 ...

  5. PCIe事务层包TLP Header详解

    1.事务层包的一般格式: 包的header为3DW(double word)或者4DW(一个DW代表4字节),数据负载为1~1024DW(即4~4096byte,最大4M),TLP Digest可选, ...

  6. 锋利的jQuery ——jQuery选择器(二)

    一.jQuery选择器 1)CSS选择器 CSS选择器有:1>标签选择器  E{CSS规则} 2>ID选择器   #ID{CSS规则} 3>类选择器  E.className{CSS ...

  7. Vue 变量,成员,属性监听

    Vue变量 <!DOCTYPE html> <html lang="zh"> <head> <meta charset="UTF ...

  8. styled-components缺点

    缺点 不能用 stylelint 检查你的 Css 代码 在使用 styled-components 的过程中也会遇到一些问题,比如我们的项目会用stylelint来做样式代码的检查,但是使用了 st ...

  9. wpf textblock 长文本滚动

    在textblock添加滚动条 <ScrollViewer VerticalScrollBarVisibility="Auto"> <TextBlock x:Na ...

  10. Cookie、Session和Django分页

    cookie Cookie的由来 大家都知道HTTP协议是无状态的. 无状态的意思是每次请求都是独立的,它的执行情况和结果与前面的请求和之后的请求都无直接关系,它不会受前面的请求响应情况直接影响,也不 ...