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


     前台页面

     1 @{
     2     Layout = null;
     3 }
     4 <!DOCTYPE html>
     5 <html>
     6 <head>
     7     <meta name="viewport" content="width=device-width" />
     8     <script src="~/Scripts/jquery-1.7.2.min.js"></script>
     9     <script src="~/Scripts/jquery.form.js"></script>
    10     <title>upload</title>
    11 </head>
    12 <body>
    13     <form id="fileForm" method="post" enctype="multipart/form-data" action="/upload/upload">
    14         文件名称:<input name="fileName" type="text"><br />
    15         上传文件:<input name="myfile" type="file" multiple="multiple"><br />
    16         <input id="submitBtn" type="submit" value="提交">
    17         <img src="#" alt="my img" id="iceImg" width="300" height="300" style="display: block;" />
    18     </form>
    19 
    20     
    21     <input type="text" name="height" value="170" />
    22     <input id="sbtn2" type="button" value="提交表单2">
    23 
    24     <input type="text" name="userName" value="" />
    25     <script type="text/javascript">
    26         $(function () {
    27             $("#fileForm").ajaxForm({
    28                 //定义返回JSON数据,还包括xml和script格式
    29                 //clearForm Boolean值属性,表示是否在表单提交成功后情况表单数据
    30                 //dataType 提交成果后返回的数据格式,可选值包括xml,json或者script
    31                 //target 服务器返回信息去更新的页面对象,可以是jquery选择器字符串或者jquer对象或者DOM对象。
    32                 //type 提交类型可以是”GET“或者”POST“
    33                 //url 表单提交的路径
    34                 dataType: 'json',
    35                 beforeSend: function () {
    36                     //表单提交前做表单验证
    37                     $("#myh1").show();
    38                 },
    39                 success: function (data) {
    40                     //提交成功后调用
    41                     //alert(data.message);
    42                     $("#iceImg").attr('src', '/upload/img/' + data.fileName);
    43                     $("#myh1").hide();
    44                     //防止重复提交的方法
    45                     //1.0 清空表单数据
    46                     $('#fileForm').clearForm();
    47                     //2.0 禁用提交按钮
    48 
    49                     //3.0 跳转页面
    50                 }
    51             });
    52 
    53 
    54             $("#myfile").change(function () {
    55                 $("#submitBtn").click();
    56             });
    57 
    58             $("#iceImg").click(function () {
    59                 $("#myfile").click();
    60             });
    61         });
    62     </script>
    63     <h1 id="myh1" style="display: none;">加载中...</h1>
    64 </body>
    65 </html>

     后台代码

    using System;
    using System.Collections.Generic;
    using System.Drawing;
    using System.Linq;
    using System.Web;
    using System.Web.Mvc;
    
    namespace IceMvc.Controllers
    {
        public class UploadController : Controller
        {
            //
            // GET: /Upload/
    
            public ActionResult Index()
            {
                return View();
            }
    
            [HttpPost]
            public ActionResult Upload()
            {
                var filesList = Request.Files;
                for (int i = 0; i < filesList.Count; i++)
                {
                    var file = filesList[i];
                    if (file.ContentLength > 0)
                    {
                        if (file.ContentLength > 5242880)
                        {
                            return Content("<script>alert('注册失败!因为您选择图片文件不能大于5M.');window.location='/User/Register';</script>");
                        }
    
                        //得到原图的后缀
                        string extName = System.IO.Path.GetExtension(file.FileName);
                        //生成新的名称
                        string newName = Guid.NewGuid() + extName;
    
                        string imgPath = Server.MapPath("/upload/img/") + newName;
    
                        if (file.ContentType.Contains("image/"))
                        {
                            using (Image img = Image.FromStream(file.InputStream))
                            {
                                img.Save(imgPath);
                            }
                            var obj = new { fileName = newName };
                            return Json(obj);
                        }
                        else
                        {
                            //return Content("<script>alert('注册失败!因为您未选择图片文件.');window.location='/User/Register';</script>");
                        }
                    }
                }
    
                return Content("");
            }
    
            public ActionResult Afupload()
            {
                return View();
            }
        }
    }
  • 相关阅读:
    hover动画
    杀毒软件性能比较
    python文件转exe
    react 踩的坑
    js前端模块化(一) commonjs
    iframe嵌套页面 音频在微信公众号环境无法播放
    js正则表达式
    js修改伪类元素样式
    OAF 开发 Q&A
    JS打开窗口问题
  • 原文地址:https://www.cnblogs.com/ICE_Inspire/p/5041538.html
Copyright © 2020-2023  润新知