用Html5与Asp.net MVC上传多个文件

html:

        <form action="/home/upload" method="post" enctype="multipart/form-data">
<input type="file" name="files" multiple/>
<input type="submit" value="提交" />
</form>

文件file 的name属性必填。

ActionResult:

 [HttpPost]
public ActionResult Upload(HttpPostedFileBase[] files)
{
var path = Server.MapPath("/File");
if (!Directory.Exists(path))
{
Directory.CreateDirectory(path);
}
foreach (HttpPostedFileBase item in files)
{
item.SaveAs(Path.Combine(path, item.FileName));
}
return Content("ok");
}

H5让我们轻松实现文件上传.

如果异步,代码如下

@{
Layout = null;
} <!DOCTYPE html> <html>
<head>
<meta name="viewport" content="width=device-width" />
<title>Index</title>
<script src="~/Scripts/jquery-1.8.2.min.js"></script>
</head>
<body>
<div>
<form id="formtable" enctype="multipart/form-data">
<input type="file" id="files" name="files" multiple />
<input type="button" id="btnok" value="提交" />
</form>
</div>
<script>
$("#btnok").click(function () {
var formdata = new FormData(document.getElementById("formtable"));
$.ajax({
url: "/home/upload",
data: formdata,
type: 'post',
datatype: 'json',
// XMLHttpRequest会对 formdata 进行正确的处理
processData: false,
//必须false才会自动加上正确Content-Type
contentType: false,
success: function (data) { alert(data); }
})
});
</script>
</body>
</html>
public ActionResult Index()
{
return View();
}
[HttpPost]
public ActionResult Upload(HttpPostedFileBase[] files)
{
var path = Server.MapPath("/File");
if (!Directory.Exists(path))
{
Directory.CreateDirectory(path);
}
foreach (HttpPostedFileBase item in files)
{
item.SaveAs(Path.Combine(path, item.FileName));
}
return Content("ok");
}
上一篇:java中的equals()方法重写


下一篇:Java中“==”与equals方法的区别