MVC批量上传文件

   初始图片:

 

 选中图片后

 

  ----------------------------------------------------------------------------------

  前端代码
  

<script src="~/Scripts/jquery-1.8.2.min.js"></script>
    @using (Html.BeginForm("SaveFile", "Home", FormMethod.Post, new { enctype = "multipart/form-data" }))
    {
        <div class="pageFormContent"  >
            <script type="text/javascript">
                var num = 0;
                function FileSelect(n) {
                    if ($("div[id*='div']").length > 0)
                    {
                        num = parseInt($("div[id*='div']").last().attr("id").replace("div", "")) + 1;
                    }
                    else {
                        num = 0;
                        num++;
                        
                    }
                   // alert("num:"+num + " n:"+n);
                    if (num - 1 <= n)
                    {
                        $("#DIV_Files").append('<div id="div' + num + '" > <input name="files" type="file"  multiple="multiple" οnclick="FileSelect(' + num + ')"  />  <input type="button" name="delInput"  value="移除"   οnclick="DelFile(div' + num + ')" /></div>');
                    }
                }
                function DelFile(sss) {
                    $(sss).remove();
                }

                function onload() {
                 //   FileSelect(0);
                }
            </script>
            <div id="DIV_Files" style=" height:300px; width:450px;  padding-left:10px;  background-color:gray; overflow:scroll">
                <div>
                    <input id="file" name="files" type="file" multiple="multiple" οnclick="FileSelect(0)"/>
                </div>
            </div>
            <input id="submit" type="submit" value="批量上传" />
         @ViewBag.Msg
     </div> }

     multiple="multiple":表示可以多选,js中代码实现点击最后一个上传input会立即生成一个input,并可以移除.样式什么的,自己定义 

 ----------------------------------------------------------------------------------

 

HomeController 中代码

public ActionResult Index(string message)
        {
            ViewBag.Msg = message;
            return View();
        }

        [HttpPost]
        public ActionResult SaveFile(IEnumerable<HttpPostedFileBase> files)
        {
            string msg = string.Empty;
            foreach (HttpPostedFileBase file in files)
            {
                if (file != null && file.ContentLength > 0)
                {
                    file.SaveAs(Server.MapPath("~/") + Path.GetFileName(file.FileName));
                    //msg = "Suc";
                }
                else
                {
                   // msg = "Fail";
                }
            }
          

            return RedirectToAction("Index","Home",new {message=msg});
        }

  

转载于:https://www.cnblogs.com/sy-ds/p/4384376.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值