我正在尝试使用ASP.NET MVC构建一个上传器,但我遇到了一些问题。
上传程序出现在由jQuery加载的私有窗格中 - 也就是说,它是自己的视图,但无法通过View Path访问。或者它无意 - 无论哪种方式,我都需要在上传完成后不要更改页面。
有没有办法做到这一点?
[AcceptVerbs(HttpVerbs.Post)]
public void FileUpload(HttpPostedFileBase uploadFile)
{
if (uploadFile.ContentLength > 0)
{
string filePath = Path.Combine(HttpContext.Server.MapPath("/Uploads"),
Path.GetFileName(uploadFile.FileName));
uploadFile.SaveAs(filePath);
}
}
<%@ Control Language="C#" Inherits="System.Web.Mvc.ViewUserControl" %>
<script type="text/javascript">
$(function() {
$("#tabs").tabs();
});
</script>
<div id="tabs">
<ul>
<li><a href="#create">Upload</a></li>
</ul>
<div id="create">
<h2>
FileUpload</h2>
<% using (Html.BeginForm("FileUpload", "Management",
FormMethod.Post, new { enctype = "multipart/form-data" }))
{%>
<input name="uploadFile" type="file" />
<input type="submit" value="Upload File" />
<%} %>
</div>
</div>
答案 0 :(得分:1)
您需要做的是异步执行文件上传,以便页面不会回发。
以下是关于jQuery异步文件上传的问题: How can I upload files asynchronously?