1
我試圖上傳多個文件以及普通表單數據。這件事我以前在PHP中實現,現在我正在使用C#中的ASP.NET MVC4來完成此操作。 我有一個HTML表單用JQuery和MVC4上傳多個文件
<form action="/controller/actionane" name="applicationform" class="upload-form" method="post" onsubmit="return false;" enctype="multipart/form-data" id="userform">
<input class="form-control" type="file" class="upload-file" data-max-size="12582912" multiple="multiple" name="attachment[]" value="documents">
<input class="btn btn-success" type="submit" name="submit" onclick="formSubmit()" />
</form>
我的JavaScript代碼使用jQuery-1.11.1看起來是這樣的:
function formSubmit() {
var form = $("form[name='applicationform']");
var data = new FormData(form[0]);
$.ajax(
{
method: "POST",
url: form.attr("action"),
processData: false, // Don't process the files
contentType: false, cache: false, async: false,
data: data,
success: function (data) {
alert(data);
}
});
}
和我的控制器看起來像這樣
[HttpPost]
public JsonResult submitApplication(HttpPostedFileBase[] attachment)
{
string fil= "";
foreach (HttpPostedFileBase file in attachment)
{
/*Geting the file name*/
string filename = System.IO.Path.GetFileName(file.FileName);
fil += filename;
/*Saving the file in server folder*/
file.SaveAs(Server.MapPath("~/Images/" + filename));
string filepathtosave = "Images/" + filename;
/*HERE WILL BE YOUR CODE TO SAVE THE FILE DETAIL IN DATA BASE*/
}
return this.Json(fil,JsonRequestBehavior.AllowGet);
}
但這不是將文件傳遞給參數 拋出對象引用null異常 應該怎樣做才能使其運行?
什麼happend如果你嘗試$(「form [name ='applicati onform']「)[0]?在consle中? – clement
分享您的HTML表單... – Knelis
它得到的jquery格式的表單元素 –