前台:

<form id="formSeacrh" action="/ResumeInfo/uploadFile" method="post" enctype="multipart/form-data">
<div class="form-horizontal">
<div class="form-group" style="height:100px;overflow-y:auto">
<div class="col-sm-8" id="filediv">
<div><input type="file" name="file" style="display: inline;" /><a href="javascript:void(0)" class="deletelink">删除</a></div>
<div><input type="file" name="file" style="display: inline;" /><a href="javascript:void(0)" class="deletelink">删除</a></div>
<div><input type="file" name="file" style="display: inline;" /><a href="javascript:void(0)" class="deletelink">删除</a></div>
</div>
</div>
<div class="form-group">
<div class="col-sm-8">
<button type="button" class="btn btn-success" style="float:left" id="addbtn">添加附件</button>
<button type="submit" id="btnSubmit" style="float:right" class="btn btn-facebook">确定</button>
</div>
</div>
</div>
</form>
<script src="~/Scripts/jquery.form.js"></script>
<script>
$(function () {
$("#formSeacrh").submit(function () {
var options = {
//target: '#output', //把服务器返回的内容放入id为output的元素中
//beforeSubmit: showRequest, //提交前的回调函数
//url: url, //默认是form的action, 如果申明,则会覆盖
//clearForm: true, //成功提交后,清除所有表单元素的值
//resetForm: true, //成功提交后,重置所有表单元素的值
//timeout: 3000, //限制请求的时间,当请求大于3秒后,跳出请求
success: function (data) {
if (data.message == "") {
parent.addDetailToDiv(false, data.files);
$(parent.document.getElementsByClassName('close')).click();
} else {
$.growl.warning({ message: data.message, title: "提示" });
}
},
error: function (error) { alert(error); },
url: '/ResumeInfo/uploadFile', /*设置post提交到的页面*/
type: "post", /*设置表单以post方法提交*/
dataType: "json" /*设置返回值类型为文本*/
}
$(this).ajaxSubmit(options);
return false;
}); $('body').on('click', '#addbtn', addFile);
$('body').on('click', '.deletelink', deleteFile);
}); function addFile() {
$('#filediv').append('<div><input type="file" name="file" style="display: inline;" /><a href="javascript:void(0)" class="deletelink">删除</a></div>');
} function deleteFile() {
$(this).parent().remove();
}
</script>

后台:

        /// <summary>
/// 上传文件
/// </summary>
/// <returns></returns>
public ActionResult uploadFile(string callback = "") {
ViewBag.callback = callback;
return View();
} /// <summary>
/// 上传文件 提交
/// </summary>
/// <returns></returns>
[HttpPost]
public ActionResult uploadFile(List<HttpPostedFileBase> list) {
List<fileClass> fileNames = new List<fileClass>();
var msg = "";
if (Request.Files.Count == ) {
msg = "请选择文件";
} else {
try {
for (int i = ; i < Request.Files.Count; i++) {
if (Request.Files[i] != null) {
string ext = Path.GetExtension(Request.Files[i].FileName);
string filename = Guid.NewGuid().ToString() + ext;
string path = "/upload/" + DateTime.Now.ToString("yyyy-MM-dd") + "/";
string directory = Server.MapPath("~" + path);
if (!Directory.Exists(directory)) {
Directory.CreateDirectory(directory);
}
string fileFullName = Path.Combine(directory, filename);
Request.Files[i].SaveAs(fileFullName);
fileClass f = new fileClass();
f.filename = Request.Files[i].FileName;
f.path = path + filename;
fileNames.Add(f);
}
}
} catch (Exception ex) {
msg = ex.Message;
}
}
return Json(new { message = msg, files = fileNames });
}

jquery.form.js 实现异步上传的更多相关文章

  1. jquery.form.js实现异步上传

    前台页面 @{ Layout = null; } <!DOCTYPE html> <html> <head> <meta name="viewpor ...

  2. jquery.form.js ajax提交上传文件

    项目中最近有用到表单提交,是带有图片上传的表单录入,需要ajax异步提交,网上找了好多例子都是只能提交上传字段一个信息的,这里整理一下.表单里有普通文本信息字段也有图片上传字段. 1.jsp代码--引 ...

  3. [Asp.net mvc]jquery.form.js无刷新上传

    写在前面 最近在自己的网盘项目中想用ajax.beginform的方式做无刷新的操作,提交表单什么的都可以,但针对文件上传,就是个鸡肋.在网上查找了发现很多人都遇到了这个问题,大部分都推荐使用jque ...

  4. asp.net使用jquery.form实现图片异步上传

    首先我们需要做准备工作: jquery下载:http://files.cnblogs.com/tianguook/jquery1.8.rar jquery.form.js下载:http://files ...

  5. 解决 jquery.form.js和springMVC上传 MultipartFile取不到信息

    前段页面: <%@ page language="java" contentType="text/html; charset=UTF-8" pageEnc ...

  6. ThinkPHP+JQuery实现文件的异步上传

    前端代码 <!DOCTYPE html> <html> <head lang="en"> <meta charset="UTF- ...

  7. jquery.form 兼容IE89文件上传

    导入部分 <script type="text/javascript" src="js/jquery-1.8.3.min.js" charset=&quo ...

  8. jQuery插件之ajaxFileUpload异步上传

    介绍 AjaxFileUpload.js 是一个异步上传文件的jQuery插件,原理是创建隐藏的表单和iframe然后用JS去提交,获得返回值. 下载地址: http://files.cnblogs. ...

  9. PHP JS JQ 异步上传并立即显示图片

    提交页面: <! DOCTYPE html> < html> < head> < meta charset ="GB2312" > ...

随机推荐

  1. 69A

    #include <stdio.h> int main() { int n; int sum1=0, sum2=0, sum3=0; int x, y, z; scanf("%d ...

  2. 小程序 showModal content换行

    wx.showModal({ title: '提示', content: '1.该拼团仅支持到指定取货地址自提\r\n2.拼团支付价格为拼团原价,当到达指定阶梯,拼团差价将在3个工作日内退回您的微信账 ...

  3. tf.InteractiveSession()和tf.Session()

    tf.InteractiveSession()适合用于python交互环境 tf.Session()适合用于源代码中 1.tf.InteractiveSession() 直接用eval()就可以直接获 ...

  4. zw量化交易·实盘操作·系列培训班

    参见: <zw量化交易·实盘操作·系列培训班> http://blog.sina.com.cn/s/blog_7100d4220102w0q5.html

  5. halcon脱离hdvp运行

    halcon如何脱离HDevelop运行:第一种方式(测试多台电脑全部正常):(推荐)使用本站开发的脱机修复助手:https://www.51halcon.com/thread-1217-1-1.ht ...

  6. java输入输出流(I/O)总结

    io流的 四个基本类 java.io包中包含了流式I/O所需要的所有类.在java.io包中有四个基本类:InputStream.OutputStream及Reader.Writer类,它们分别处理字 ...

  7. app 开发

    移动APP开发   ios  Android 中国人写的 MUI 布局框架 HTML5plus 硬件驱动调用(打开摄像头,闪光灯,震动) 和 系统调用(打开相册,通讯录,message) http:/ ...

  8. Qt做发布版,解决声音和图片、中文字体乱码问题(需要在main里写上QApplication::addLibraryPath("./plugins")才能加载图片,有图片,很清楚)

    前些天做Qt发布版,发现居然不显示图片,后来才发现原来还有图片的库没加!找找吧,去qt的安装包,我装在了F盘,在F盘F:/QT/qt/plugins,找到了plugins,这里面有个 imagefor ...

  9. Linux笔记 #09# Tomcat多开以及Nginx负载均衡简单例子

    索引 Tomcat怎样多开.. 1.添加环境变量(最基础.关键的步骤!) 2.改catalina.sh 3.改相关端口 Nginx负载均衡简单例子 Tomcat怎样多开.. 演示一下如何开两个(开n个 ...

  10. jQuery 字符串拼接

    jQuery 字符串拼接 // 字符串加变量拼接 $('#id 标签名[属性名="' + 变量 + '"]')