Я пытаюсь отправить форму, одним из свойств которой является список файлов.
После успешного завершения ActionResult мне нужно показать сообщение об успешном выполнении, которое должно быть запущено с помощью Javascript.
Если я использую форму Ajax.Begin, отображается сообщение javascript, но файлы не отправляются в ActionResult, с другой стороны, если я использую Html.BeginForm файлы отправлены, но я не могу вызвать функцию javascript и, следовательно, не могу вызвать сообщение об успешном выполнении.
вот мой взгляд:
@using (Html.BeginForm("Action", "Controller", FormMethod.Post,
new { id = "exceptionForm", enctype = "multipart/form-data" }))
{
@Html.TextAreaFor(m => m.Notes)
@(Html.Kendo().Upload()
.Name("EventFiles")
)
<div >
<button href="#">
submit
</button>
</div>
}
Мои действия
[HttpPost]
public ActionResult Action(Model model)
{
//do something
result = new BaseJsonData();
result.HasCompletedSuccessfully = true;
return this.Json(result);
}
Моя модель
public class EventModel
{
public string Notes { get; set; }
public IEnumerable<HttpPostedFileBase> EventFiles { get; set; }
}
Мой javascript:
onSuccess: function (data) {
if (data.HasCompletedSuccessfully) {
//show message extention
}
}
Заранее спасибо :)
Шьюнс