界面如下:

aaarticlea/png;base64,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" alt="" />

需要用到MyAjaxForm.js库

http://code1.okbase.net/codefile/MyAjaxForm.js_2013012620457_83.htm

<script src="~/Scripts/MyAjaxForm.js"></script>

 @using (Ajax.BeginForm("AjaxAddUserPrintReport", "Admin", new AjaxOptions() { HttpMethod = "post", LoadingElementId = "loading", OnSuccess = "afterOk",OnFailure="afterErr" }, new { id = "addform", @class = "form-horizontal", enctype = "multipart/form-data" }))
    { <div class="form-group">
<label for="uploadfile" class="col-md-2 control-label"> 上传文件:</label>
<div class="col-md-4">
<textarea class="form-control hidden" id="Uploadfileurl" name="Uploadfileurl" rows=""></textarea>
<input type="file" id="fileup" name="fileup" />
<button type="button" id="btnupload" class="btn btn-warning btn-sm">上传</button>
</div>
<div id="showfile" class="col-md-4"> </div>
</div>
}
  //点击上传文件
$("#btnupload").click(function () {
if ($(":file").val() == "")
{
alert("请选择上传文件后再点击上传按钮");
return;
}
$("#addform").ajaxSubmit({
error: function (error) { alert(error); },
url: '/Admin/AjaxUploadFile',
type: "post",
success: function (data) {
var arr = data.split(":");
if (arr[] == "ok") {
$("#Uploadfileurl").val($("#Uploadfileurl").val().trim()==""?arr[]: $("#Uploadfileurl").val()+ "," + arr[]);
addfile();
}
else {
alert(arr[]);
}
}
});
});

MVC中上传代码如下:

 /// <summary>
        /// 上传文件,最大上传10M
        /// </summary>
        /// <returns></returns> public ActionResult AjaxUploadFile()
{
try
{
HttpPostedFileBase uploadfile = Request.Files["fileup"];
if (uploadfile == null)
{
return Content("no:非法上传");
}
if (uploadfile.FileName == "")
{
return Content("no:请选择文件");
}
if (uploadfile.ContentLength > * * )
{
return Content("no:上传文件超过10M,实际上传大小为" + uploadfile.ContentLength);
}
string filename = Path.GetFileName(uploadfile.FileName);
string fileExt = Path.GetExtension(filename);
StringBuilder sbtime = new StringBuilder();
sbtime.Append(DateTime.Now.Year).Append(DateTime.Now.Month).Append(DateTime.Now.Day).Append(DateTime.Now.Hour).Append(DateTime.Now.Minute).Append(DateTime.Now.Second);
string dir = "/UploadFile/" + getUserBySession().Name + "/" + filename.Substring(, filename.LastIndexOf(".")) + "_" + sbtime.ToString() + fileExt;
string realfilepath = Request.MapPath(dir);
string readDir = Path.GetDirectoryName(realfilepath);
if (!Directory.Exists(readDir))
Directory.CreateDirectory(readDir); uploadfile.SaveAs(realfilepath);
return Content("ok:" + dir);
}
catch (Exception ex)
{
return Content("no:" + ex.Message);
}

asp.net异步上传的更多相关文章

  1. ASP.NET MVC 文件异步上传问题处理

    最近在做一个网站,用asp.net MVC4.0来开发,今天遇到了个小问题,通过查找相关渠道解决了,在这里把这个问题写出来,问题非常简单,不喜勿喷,mark之希望可以给遇到相同问题的初学者一点帮助.我 ...

  2. ASP.NET WebAPi(selfhost)之文件同步或异步上传

    前言 前面我们讲过利用AngularJs上传到WebAPi中进行处理,同时我们在MVC系列中讲过文件上传,本文结合MVC+WebAPi来进行文件的同步或者异步上传,顺便回顾下css和js,MVC作为客 ...

  3. Asp.Net Mvc异步上传文件的方式

    今天试了下mvc自带的ajax,发现上传文件时后端action接收不到文件, Request.Files和HttpPostedFileBase都接收不到.....后来搜索了下才知道mvc自带的Ajax ...

  4. ASP.NET MVC 使用jquery.form.js 异步上传 在IE下返回值被变为下载的解决办法

    错误记录: <script type="text/javascript"> $(function () { $(document).off("ajaxSend ...

  5. asp.net mvc 使用uploadfiles 实现异步上传数据

    lesg.cn 文章发布在:  http://www.lesg.cn/netdaima/net/2017-990.html 在实际开发过程中, 为了提高用户的体验,在上传文件的时候通常会使用异步上传文 ...

  6. 适用于各浏览器支持图片预览,无刷新异步上传js插件

    文件上传无疑是web应用中一个非常常用的功能,不管是PHP.jsp还是aspx.mvc等都会需要文件上传,但是众所周知当使用自带的文件上传功能时总会出现页面刷新的情况.当然现在有了html5这个好东西 ...

  7. 利用jquery.form实现异步上传文件

    实现原理 目前需要在一个页面实现多个地方调用上传控件上传文件,并且必须是异步上传.思考半天,想到通过创建动态表单包裹上传文件域,利用jquery.form实现异步提交表单,从而达到异步上传的目的,在上 ...

  8. MVC文件上传01-使用jquery异步上传并客户端验证类型和大小

    本篇体验MVC上传文件,从表单上传过渡到jquery异步上传. MVC最基本的上传文件是通过form表单提交方式 □ 前台视图部分 <% using(Html.BeginForm("F ...

  9. 文件上传之——用SWF插件实现文件异步上传和头像截取

    之前写过几篇文件上传,那些都不错.今天小编带领大家体会一种新的上传方法,及使用Flash插件实现文件上传. 使用Flash的好处就是可以解决浏览器兼容性问题.之前我写的一个快捷复制功能也是利用的Fla ...

随机推荐

  1. nodejs multer

    nodejs上传文件multer var multer = require('multer') var storage = multer.diskStorage({ destination: func ...

  2. AS 3.1 多library合并打包成aar的正确方式(fat-aar)

    前言 主要参考fat-aar来合并打包. 但是这个fat-aar很久没维护了,如果直接使用它会有很多问题.由于对gradle脚本也不是太熟,就只能顺着它的意思,将gradle降级成2.2.3的版本. ...

  3. 20154327 Exp3 免杀原理与实践

    实践内容 基础问题回答 (1)杀软是如何检测出恶意代码的? 杀毒软件主要靠特征码进行查杀,匹配到即为病毒. 还有通过云查杀,查看云端库中该文件是否属于恶意代码. 跟踪该程序运行起来是否存在恶意行为,来 ...

  4. c++中string (MFC)

    题目:UVALive - 6439    https://icpcarchive.ecs.baylor.edu/index.php?option=com_onlinejudge&Itemid= ...

  5. 优步UBER司机全国各地奖励政策汇总 (4月4日-4月10日)

    滴快车单单2.5倍,注册地址:http://www.udache.com/ 如何注册Uber司机(全国版最新最详细注册流程)/月入2万/不用抢单:http://www.cnblogs.com/mfry ...

  6. 优步UBER司机全国各地奖励政策汇总 (2月15日-2月21日)

    滴快车单单2.5倍,注册地址:http://www.udache.com/ 如何注册Uber司机(全国版最新最详细注册流程)/月入2万/不用抢单:http://www.cnblogs.com/mfry ...

  7. 在线elasticsearch集群批量写入变慢,导致kafka消息消费延迟

    写入报错如些: -- ::24.166 [elasticsearch[_client_][listener][T#1]] INFO com.mobanker.framework.es.Elastics ...

  8. JavaSE打开windows文件

    第一个参数表示用什么程序打开,第二个参数表示文件的路径 例一: //用记事本打开d:/test.txt文件 Process p = java.lang.Runtime.getRuntime().exe ...

  9. Qt-QSplashScreen-程序启动动画

    多数大型应用程序启动时可会在程序完全启动前显示一个启动画面,在程序完全启动后消失,程序启动画面可以显示相关产品的一些信息,使用户在等待程序启动时同时了解产品的相关功能,这也是一种宣传方式. 首先运行界 ...

  10. 不老的神器--namp,awvs

    要会使用的工具 NESSUS nmap awvs hydra burpsuit 工具的话,都有文档,应该多使用 -h 多看官方文档,就会用了. 1.namp基本用法 -iL <inputfile ...