前言:公司前端都是index页面引用js,剩下的添加。。。都是html页。加大操作难度5555,所以就是主页面操作子页面上传。效果如下:

1,前端html页代码如下 。其中请注意,form中enctype="multipart/form-data",必须使用form-data传值。并且html5可直接在input标签file控件中设置accept属性限制上传文件类型,设置multiple属性可同时上传多个文件。如果是页面为cshtml,则可以直接设置上传按钮的data-bind="click:事件名称"进行事件的绑定,因为页面为html页,我在js中处理绑定

<form id="importFileForm" enctype="multipart/form-data">
<table class="dialog-table">
<tbody>
<tr>
<td class="col-name">上传照片:</td>
<td>
<input type="file" class="easyui-filebox" id="fileImport" name="fileImport" style="width:260px;">
<a id="uploadFile" class="easyui-linkbutton" data-options="iconCls:'icon-ok'" href="#">上传</a>
</td> </tbody>
</table>
</form>

2,下面是js代码,其中box为子窗体对象,若为cshtml即可直接用$获取对象,其中获取file对象为var file = document.getElementById('fileImport').files[0];form数据即为new FormData($("#importFileForm")[0]);

 function initAdd($box) {
$box.find("#uploadFile").bind('click', function (e) {
// file对象
var file = $box.find("#fileImport")[0].files[0];
//判断控件中是否存在文件内容,如果不存在,弹出提示信息,阻止进一步操作
if (file == null) { alert('错误,请选择文件'); return; } //获取文件名称
var fileName = file.name;
//获取文件类型名称
var file_typename = fileName.substring(fileName.lastIndexOf('.'), fileName.length); var p = $box.find("#importFileForm");
//获取form数据
var formData = new FormData(p[0]); $.ajax({
url: "/YGXX/YGGL/PostExcelData",
type: 'POST',
data: formData,
async: false,
cache: false,
contentType: false,
processData: false,
success: function (returnInfo) {
alert(1);
},
error: function (returnInfo) {
alert(0);
}
});
});
}

3,Controller代码

 [HttpPost]
public string PostExcelData()
{
//获取客户端上传的文件集合
HttpFileCollection files = System.Web.HttpContext.Current.Request.Files;
//获取文件集合中的第一个文件(每次只上传一个文件)
HttpPostedFile file = files[];
//定义文件存放的目标路径
string targetDir = System.Web.HttpContext.Current.Server.MapPath("~/Content/touxiang"); //组合成文件的完整路径
string path = System.IO.Path.Combine(targetDir, System.IO.Path.GetFileName(file.FileName));
//保存上传的文件到指定路径中
file.SaveAs(path);
return path;
}

结语:

菜鸟技能,请大神指点。

asp.net MVC+easyUI 文件上传的更多相关文章

  1. MVC图片上传、浏览、删除 ASP.NET MVC之文件上传【一】(八) ASP.NET MVC 图片上传到服务器

    MVC图片上传.浏览.删除   1.存储配置信息 在web.config中,添加配置信息节点 <appSettings> <add key="UploadPath" ...

  2. Asp.net mvc 大文件上传 断点续传

    Asp.net mvc 大文件上传 断点续传 进度条   概述 项目中需要一个上传200M-500M的文件大小的功能,需要断点续传.上传性能稳定.突破asp.net上传限制.一开始看到51CTO上的这 ...

  3. ASP.NET MVC之文件上传【一】(八)

    前言 这一节我们来讲讲在MVC中如何进行文件的上传,我们逐步深入,一起来看看. Upload File(一) 我们在默认创建的项目中的Home控制器下添加如下: public ActionResult ...

  4. ASP.NET MVC之文件上传【一】

    前言 这一节我们来讲讲在MVC中如何进行文件的上传,我们逐步深入,一起来看看. Upload File(一) 我们在默认创建的项目中的Home控制器下添加如下: public ActionResult ...

  5. asp.net mvc 多文件上传

    @{ ViewBag.Title = "多文件上传测试"; } <h2>多文件上传测试</h2> <form action="/Demo/I ...

  6. Asp.net mvc 大文件上传 断点续传 进度条

    概述 项目中需要一个上传200M-500M的文件大小的功能,需要断点续传.上传性能稳定.突破asp.net上传限制.一开始看到51CTO上的这篇文章,此方法确实很不错,能够稳定的上传大文件,http: ...

  7. 探索Asp.net mvc 的文件上传

    (转自:http://www.cnblogs.com/n-pei/archive/2010/10/15/1852635.html) 最近因为TeamVideo需要用到视频和图片上传功能,所以试着Goo ...

  8. 探索Asp.net mvc 的文件上传(由浅入深)

    代码下载:http://files.cnblogs.com/n-pei/mvcfileupload.zip 最近因为TeamVideo需要用到视频和图片上传功能,所以试着Google了很多资料,和大家 ...

  9. ASP.NET MVC之文件上传【二】(九)

    前言 上一节我们讲了简单的上传以及需要注意的地方,查相关资料时,感觉上传里面涉及到的内容还是比较多,于是就将上传这一块分为几节来处理,同时后续也会讲到关于做上传时遗漏的C#应该注意的地方,及时进行查漏 ...

随机推荐

  1. ASP.NET SignalR 与LayIM配合,轻松实现网站客服聊天室(一) 整理基础数据

    最近碰巧发现一款比较好的Web即时通讯前端组件,layim,百度关键字即可,我下面要做的就是基于这个前端组件配合后台完成即时聊天等功能.当然用到的技术就是ASP.NET SingalR框架.本人不会c ...

  2. 【题解】洛谷P3205【HNOI2010】合唱队

    洛谷 P3205:https://www.luogu.org/problemnew/show/P3205 复习区间DPing 思路 把理想队列拆分成 第一个和后面几个 划分成求后面几个的理想队列 最后 ...

  3. 如何打卡后缀为3ds的文件

    打开.3DS文件 3DS文件怎么打开? 用它吧:a3dsviewer,顾名思义,一个3D文件浏览工具,为用户提供一个快速和简单的3DS文件浏览器很容易. 这里是一些主要特点的“a3dsviewer”: ...

  4. o'Reill的SVG精髓(第二版)学习笔记——第八章

    第八章:图案和渐变 要使用图案,首先要定义一个水平或者垂直方向重复的图形对象,然后用它填充另一个对象或者作为笔画使用.这个图形对象呗称作tile(瓷砖). 下面可以把SVG绘制的二次曲线作为图案. & ...

  5. Restrramework源码(包含组件)分析

    1.总体流程分析 rest_framework/view.py 请求通过url分发,触发as_view方法,该方法在ViewSetMixin类下 点进去查看as_view源码说明,可以看到它在正常情况 ...

  6. Oracle客户端与Toad、plsql developer安装

    (一)oracle client与oracle instant client比较 当我们要使用Toad.plsql developer等工具连接数据库时,首先需要在自己的电脑上安装oracle cli ...

  7. linux下ssh/sftp配置和权限设置

    基于 ssh 的 sftp 服务相比 ftp 有更好的安全性(非明文帐号密码传输)和方便的权限管理(限制用户的活动目录). 1.开通 sftp 帐号,使用户只能 sftp 操作文件, 而不能 ssh ...

  8. JAVA如何跨项目调用接口

    public String load(String url, String query) throws Exception { URL restURL = new URL(url); /* * 此处的 ...

  9. c# 分布式系统开发

    开篇吹牛,吹大牛了各位. 接连几篇博文,已经将了我们系统常用的东西,主要针对服务端,非桌面系统. 聊了这么久了,最后将这所有内容打包,完成一个系统.可能称为组件才合适,因为我没有提供启动程序. 每一个 ...

  10. 判断js中数据类型 的最短代码

    判断字符串类型的: function isString(obj) { return obj+"" === obj; } 判断bool类型的: function isBool(obj ...