• 设为首页
  • 点击收藏
  • 手机版
    手机扫一扫访问
    迪恩网络手机版
  • 关注官方公众号
    微信扫一扫关注
    公众号

asp.netmvcajax文件上传

原作者: [db:作者] 来自: [db:来源] 收藏 邀请
前台页面提交文件

<!DOCTYPE html>

<html>
<head>
<meta name="viewport" content="width=device-width" />
<title>文件操作</title>
</head>
<body>
<form id="upFileForm">
<div style="margin:30px;">
<span style="margin-right:10px;">上传文件</span><input type="file" name="UpFile" id="UpFile" style="width:12%;" />
<input type="button" onclick="upFile()" value="确认上传" />
</div>
</form>

<script src="~/Scripts/jquery-1.10.2.min.js"></script>
<script src="~/Scripts/jquery.form.js"></script>

<script>

//上传文件
function upFile() {
var file = document.getElementById("UpFile").files[0];
if (!file) {
alert("请选择文件!");
return;
}
var size = file.size / 1024 / 1024;
if (size > 50) {
alert("图片文件不能大于50M");
return;
}
$("#upFileForm").ajaxSubmit({
url: "/File/UploadFile",
type: "post",
dataType: "json",
success: function (data) {
if (data == "" || data == "0") {
alert("上传失败");
}
if (data == "2") {
alert("不支持上传该文件");
} else {
alert(JSON.stringify(data));
}
},
error: function (aa) {
alert(aa);
}
});
}
</script>

</body>
</html>

 

后台接收和上传

[HttpPost]
public JsonResult UploadFile()
{
  HttpRequest request = System.Web.HttpContext.Current.Request;
  HttpFileCollection FileCollect = request.Files;
  string path = "";//文件的完整路径
  //文件保存目录路径
  string imgPathName = DateTime.Now.ToString("yyyyMMdd");//以日期为文件存放的上层文件夹名
  string savePath = "/upload/file/" + imgPathName + "/";//文件存放的完整路径
  //如果文件路径不存在则创建文件夹
  if (!Directory.Exists(Server.MapPath(savePath)))
  {
    Directory.CreateDirectory(Server.MapPath(savePath));
  }
  //定义允许上传的文件扩展名
  Hashtable extTable = new Hashtable();
  extTable.Add("file", "doc,docx,xls,xlsx,ppt,htm,html,txt,zip,rar,gz,bz2");

  if (FileCollect.Count > 0)//如果集合的数量大于0,多文件上传情况 
  {
    foreach (string str in FileCollect)
    {
    HttpPostedFile imgFile = FileCollect[str];//用key获取单个文件对象HttpPostedFile 
    string fileName = imgFile.FileName;//获取文件名
    string fileExt = Path.GetExtension(fileName).ToLower();//获取文件后缀名
    //判断文件类型是否正确
    if (Array.IndexOf(((string)extTable["file"]).Split(','), fileExt.Substring(1).ToLower()) == -1)
    {
      //文件类型不正确
      return Json("2");
    }
    string imgName = DateTime.Now.ToString("yyyyMMddhhmmss");//文件别名
    string imgPath = savePath + imgName + "-" + imgFile.FileName;//构造文件保存路径 
    string AbsolutePath = Server.MapPath(imgPath);
    imgFile.SaveAs(AbsolutePath);//将上传的东西保存 
    path = imgPath;//获得文件完整路径并返回到前台页面
  }
    return Json(path);
  }
  else
  {
    //上传失败
    return Json("0");
  }
}

 


鲜花

握手

雷人

路过

鸡蛋
该文章已有0人参与评论

请发表评论

全部评论

专题导读
上一篇:
ASP.NETMVC发展历程发布时间:2022-07-10
下一篇:
asp.net 生成验证码问题发布时间:2022-07-10
热门推荐
热门话题
阅读排行榜

扫描微信二维码

查看手机版网站

随时了解更新最新资讯

139-2527-9053

在线客服(服务时间 9:00~18:00)

在线QQ客服
地址:深圳市南山区西丽大学城创智工业园
电邮:jeky_zhao#qq.com
移动电话:139-2527-9053

Powered by 互联科技 X3.4© 2001-2213 极客世界.|Sitemap