1
我想一個文件傳遞給使用jQuery我的控制器,使用戶不必上傳後離開該頁面通過一個文件到控制器....如何使用jQuery
我可以」似乎得到這個工作。一旦傳遞給我的控制器,我會一直收到「空引用」。以下是我已經試過:
控制器:
[HttpPost]
public ActionResult Upload(HttpPostedFileBase file)
{
var image = Path.GetFileName(file.FileName);
if (file != null && file.ContentLength > 0)
{
var fileName = Path.GetFileName(file.FileName);
var filePath = Path.Combine(Server.MapPath("~/Content/Images/UploadedImages/"), System.IO.Path.GetFileName(file.FileName));
file.SaveAs(filePath);
return Json(filePath.ToString());
}
else
{
return Json("Image failed to load");
}
}
查看:
<script src="@Url.Content("~/Scripts/jquery.validate.min.js")" type="text/javascript"></script>
<script src="@Url.Content("~/Scripts/jquery.validate.unobtrusive.min.js")" type="text/javascript"></script>
@using (Html.BeginForm("Upload", "Home", FormMethod.Post, new { enctype = "multipart/form-data", id = "testupload", name = "testupload" }))
{
<div class="editor-field">
<input type="file" name="file" id="file" />
</div>
<input type="submit" value="Submit"/>
}
<input type="button" onclick="upload();" value="Upload" />
<input type="text" id="url"/>
的Jquery:
function upload() {
$.post("../../../Home/Upload", $("#testupload"), function (data) {
$("#url").val(data);
});
}