jquery.form 和MVC4做无刷新上传DEMO

HTML:

<script src="~/Scripts/jquery-1.10.2.min.js"></script>
<script type="text/javascript" src="/Scripts/jquery.form.js"></script>
<script type="text/javascript" src="/Scripts/common.js"></script>  <form accept-charset="UTF-8" id="node_form" method="post" action=""><input size="30" class="tino_file" maxlength="128" name="pic" id="field-pic" imgstyle=" width=100" type="text" /><input size="30" class="tino_file1" maxlength="128" name="pic1" id="field-pic1" imgstyle=" width=100" type="text" />
</form>

JS:

$(document).ready(function(){$('input.tino_file').each(function(){var form=$(this).parents("form");form.attr('enctype','multipart/form-data');var old_name=$(this).attr('name');$(this).hide();var new_name=old_name+'_file';var imgstyle=$(this).attr('imgstyle');var imgstr='';var old_file=$(this).val();if(''!=old_file){imgstr='<a href="'+old_file+'" target="_blank"><img src="'+old_file+'" '+imgstyle+'></a> <a href="###" οnclick="del_pic(\''+old_name+'\')">删除</a>';}var str='<input type="file" name="'+new_name+'" id="'+new_name+'" value=""><input type="hidden" id="'+new_name+'_del" value=""><div id="'+new_name+'_show">'+imgstr+'</div>';$(this).after(str);var ahah=$(this);$('#'+new_name).change(function(){var tmp=$(this).val();if(''!=tmp){//alert(ahah.val());
                form.ajaxSubmit({url:"/Home/UploadImage",type: 'POST',data:{'field':new_name,'only_img':'yes','old_img':$('#'+new_name+'_del').val()},dataType: "json",//beforeSend:function(){loading_start();},
                    success: function(result) {if ('' != result.url) {var tmp = result;$('#' + new_name + '_show').html('<a href="' + tmp.url + '" target="_blank"><img src="' + tmp.realpath + '" ' + imgstyle + '></a> <a href="###" οnclick="del_pic(\'' + old_name + '\')">删除</a>');ahah.val(tmp.url);$('#' + new_name + '_del').val(tmp.realpath);window.onbeforeunload = function () {}} else {alert("请选择正确图片上传");}}});}});});

Contoller:

        public JsonResult UploadImage(){var relativeurl = "";//相对路径var realurlpath = "";//绝对路径if (Request.Files.Count <= 0)return Json(new{url =relativeurl,realpath=realurlpath});for(var i = 0;i < Request.Files.Count;i++){var extensionname = DateTime.Now.ToString("yyyyMMddmmss");var file = HttpContext.Request.Files[i];if (file == null || file.ContentLength <= 0) continue;var originExtensionName = EnHtml(HttpUtility.UrlDecode(file.FileName,Encoding.GetEncoding("GB2312"))).Substring(EnHtml(HttpUtility.UrlDecode(file.FileName,Encoding.GetEncoding("GB2312"))).Length - 3);if (originExtensionName.ToLower() != "jpg" && originExtensionName.ToLower() != "gif") continue;var newFile = extensionname + "." + originExtensionName;relativeurl = newFile;realurlpath = "/upfile/" + newFile;file.SaveAs(HttpContext.Server.MapPath("/upfile/" + newFile));}return Json(new {url = relativeurl,realpath = realurlpath});}private static string EnHtml(string str) {if(str == null)return "";str = str.Replace(" ","");str = str.Trim();return str;}

jquery.form 和MVC4做无刷新上传DEMO相关推荐

  1. ASP.NET工作笔记之一:图片上传预览及无刷新上传

    转自:http://www.cnblogs.com/sibiyellow/archive/2012/04/27/jqueryformjs.html 最近项目里面涉及到无刷新上传图片的功能,其实也就是上 ...

  2. jQuery AJAX 网页无刷新上传示例

    新年礼,提供简单.易套用的 jQuery AJAX 上传示例及代码下载.后台对文件的上传及检查,以 C#/.NET Handler 处理 (可视需要改写成 Java 或 PHP). 有时做一个网站项目 ...

  3. 利用jquery.form.js实现Ajax无刷新图片上传及预览功能

    某些时候当我们做登记页面的时候可能需要上传图片,并实现即时预览的功能. 如果只是预览而不上传,可以使用ImagePreview来实现,方便简单.如果需要上传,那么你也可以使用uploadify无刷新上 ...

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

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

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

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

  6. jQuery无刷新上传学习心得

    记得刚离开大学,进入目前这家公司不到一个月时,有一位前辈给我们当时的新人讲了下JS无刷新上传的相关知识. 在此之前,一直都是在使用C#提供的服务器上传控件FileUpload,但是每次使用时,都会刷新 ...

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

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

  8. 无刷新上传Excel后利用JQuery AJAX 显示进度条的实现方式

    1.前台上传页面代码 <divclass="clearfix mywebsite-nodata"><divid="show"><f ...

  9. Asp.Net无刷新上传并裁剪头像

    开发网站几乎都做过上传图片并截图,做个无刷新Asp.Net上传并截图示例 实现功能: 1.选择文件,自动上传并生成缩放图(上传带进度条),形成预览图 2.在预览区,实现鼠标拖拽截图区,截取图片(示例截 ...

最新文章

  1. JavaScript之图片的无缝滚动
  2. Snapchat何以在Facebook包围下“杀出重围”?
  3. Spring JDBC-实施Spring AOP事务注意事项及案例分析
  4. PostgreSQL数据类型-枚举类型、几何类型、网络地址类型和其他数据类型
  5. sklearn 决策树(分类树、回归树)的 重要参数、属性、方法理解
  6. SSD浅层网络_目标检测SSD
  7. Docker 安装 MySQL5.7
  8. 【Kafka】Kafka NIO
  9. Linux 系统调优相关工具
  10. 【Java多线程】写入同一文件,自定义线程池与线程回收利用2
  11. Silverlight实现文件的下载[很简单]
  12. 39、VS838红外线接收实验
  13. LabView学习之旅(2)labview基础编程
  14. aso核心,影响ASO优化的核心问题大汇总
  15. 基于JAVA校园快递代领系统计算机毕业设计源码+系统+mysql数据库+lw文档+部署
  16. AC2100 OpenWrt 多拨
  17. 计算机组成北大,计算机组成原理-PKUSEI.PDF
  18. C++ 单例模式学习(Singleton)
  19. 演讲者模式投影到幕布也看到备注_演讲者备注怎么显示
  20. 转载 Package CJK Error: Invalid character code错误

热门文章

  1. android:listView Button 焦点问题
  2. 线程通信问题--生产者和消费者问题
  3. Spring的一些资源
  4. offset/client/scroll一些总结
  5. (转译)用FFmpeg和SDL写播放器--01视频帧提取
  6. python查询sqlserver视图_如题:sqlserver连接Oracle数据库,在sql查询分析器中查询oracle中的视图,根据时间字段查询,SQL语句...
  7. python函数参数列表_python函数的列表参数传递
  8. yii mysql 操作数据库_Yii数据库操作_MySQL
  9. nullptr was not declared怎么解决_剑桥少儿英语考试语法怎么学?一套《Grammer Friends和语法做朋友》:这样学语法,孩子学得会、记得住!...
  10. python怎么重新开始_人人都是数据科学家从新开始用Python学习数据科学的完整教程P3...