У меня есть требование, когда я хочу загрузить файл Excel в контроллер, прочитать файл, обработать его данные и отправить его обратно в то же представление, что и объект JSON.
Я хочу добиться этогоиспользуя вызов AJAX, так как я хочу перехватить его успешный обратный вызов и манипулировать DOM согласно полученному ответу.Я пробовал несколько вещей, но я не могу поразить контроллер.Любая помощь по этому вопросу приветствуется.
Ниже показаны мои JS , HTML и C # код:
function SubmitInfo() {
var formData = new FormData();
formData.append('file', $('#fileInput')[0].files[0]); // myFile is the input type="file" control
var _url = '@Url.Action("Upload", "CrossValidation")';
$.ajax({
url: _url,
type: 'POST',
data: formData,
processData: true, // tell jQuery not to process the data
contentType: false, // tell jQuery not to set contentType
success: function (result) {
//manipulate DOM and bind response with Kendo grid
alert("result");
},
error: function (jqXHR) {
},
complete: function (jqXHR, status) {
}
});
}
<div class="col-md-4">
<input id="fileInput" type="file">
</div>
<div class="col-md-4">
<input type="submit" value="Upload file" onclick="SubmitInfo()"/>
</div>
public JsonResult Upload(IFormFile formData)
{
//Do something here....
return Json("");
}