Прошу прощения, если это уже было задано, но я искал когда-то, но все, что я нашел, это довольно старые сообщения (mvc1, mvc2). У меня есть форма, которую я хотел бы отправить через Ajax.
Это похоже на работу, но не распространяется на проверку на стороне сервера.
1) Я не уверен, следует ли использовать AjaxHelper.BeginForm
или использовать необработанные вызовы jquery ($.ajax)
? Какой здесь рекомендуемый подход?
2) Как обрабатывать проверку на стороне клиента и сервера? Я надеюсь, что структура mvc обеспечивает встроенный механизм для решения этой проблемы?
Есть некоторые проверки, которые я делаю только на стороне сервера. Будет ли использовать ValidationSummary
здесь?
Я использую asp.net mvc3/бритву с ненавязчивой проверкой javascript.
Спасибо!
Изменить: (по просьбе Бобби Б. ниже). Это было добавлено спустя несколько месяцев после запроса вопроса, поскольку пользователь хотел узнать, как использовать AjaxHelper
Это код javascript, который я использовал:
<script type="text/javascript">
function ajaxValidate() {
return $('form').validate().form();
}
function getGbPostSuccess(ajaxContext){
// .... it is not necessary to do anything here.
}
function showFaliure(ajaxContext){
// handle failure
}
HTML-фрагмент:
@using (Ajax.BeginForm("Index", "Home", new AjaxOptions
{
UpdateTargetId = "form1",
InsertionMode = InsertionMode.Replace,
OnBegin = "ajaxValidate",
OnSuccess = "getGbPostSuccess",
OnFailure = "showFaliure"
}))
{