Мне нужна помощь / руководство по написанию AJAX-части моего приложения.
У меня есть кнопка, при нажатии которой появляется модальное диалоговое окно.В диалоговом окне у меня есть форма Ajax, в которой есть текстовое поле и кнопка для сохранения значений:
@using( Ajax.BeginForm("SaveText", new AjaxOptions{ OnSuccess = "ajaxSuccess" }) )
{
@Html.TextBoxFor(m => m.Text)
<p>
<input type="submit" value="Save" />
</p>
}
Когда AJAX завершит работу успешно, я хочу закрыть диалоговое окно и обновить сетку на главной странице:
function ajaxSuccess() {
closeDialog();
refreshGrid();
}
Я столкнулся с проблемами при попытке реализовать проверку.Я не совсем уверен, как достичь того, чего я хочу.Вот мой контроллер:
public ActionResult SaveText(SaveTextViewModel model)
{
if( ModelState.IsValid )
{
return PartialView("SaveTextPartial", model);
}
repository.SaveText(...);
return PartialView("SaveTextPartial");
}
Вот где я испытываю трудности: когда я отправляю форму и возникают ошибки проверки, контроллер возвращает частичное представление, но метод AJAX OnSuccess завершается.Я не знаю, как отличить успех с ошибками и успех без ошибок.Когда у меня возникают ошибки валидации, моя форма закрывается, а сетка обновляется, а это не то, чего я хочу.
У кого-нибудь есть идеи?Нужно ли мне реструктурировать весь поток моего вызова AJAX или сделать его совершенно другим?