我在通过ajax和kendo mvvm upload上传文件时遇到问题。我有文件一直到发帖。但这并没有涉及到控制器的动作。我已经尝试了多种方法。但是似乎没有任何东西可以通过。 Request.Files为空。在动作中使用HttpPostedFileBase或HttpPostedFileBase的等号进行了尝试。没事。
html
<input name="myfile" id="myfile" type="file" data-role="upload" data-bind="events: {select:myuploadevent}" />
js
myuploadevent: function(e) {
var files = e.files;
var formData = new FormData();
for (i = 0; i < files.length; i++) {
//Appending each file to FormData object
formData.append(files[i].name, files[i]);
}
$.ajax({
url: myUrl, // this is set elsewhere
type: "POST",
dataType: 'json',
contentType: false,
processData: false,
data: formData,
async: false,
cache: false,
success: function (result) {
alert(result);
},
error: function (err) {
alert(err.statusText);
}
});
},
控制器动作
[System.Web.Mvc.HttpPost]
public ActionResult UploadDocument()
{
for (int i = 0; i < Request.Files.Count; i++)
{
var file = Request.Files[i];
}
return Json("File uploaded");
}