Я новичок в MVC и пытаюсь разобраться с вызовами AJAX и проверкой модели.Вот что у меня есть:
Действие контроллера, которое обслуживает представление с одним текстовым полем и ссылкой.Представление выглядит следующим образом:
<div>
...
<input type="text" name="registration" value=""/><a id="checkRegoLink" href="#">Check rego</>
...
</div>
checkRegoLink выполняет POST-вызов $ .ajax () для действия, которое служит PartialViewResult.
$.ajax({
url:"/Entry/CheckRego",
type: "POST",
data: {...stuff...},
success: function (data, status, request){
$("#target").html(data);
},
});
PartialViewResult служит для строго типизированногочастичный вид _CreateEntry
.Модель для этого представления имеет некоторые атрибуты [Required]
для различных свойств.Вот некоторый фрагмент этого частичного представления:
@model namespace.EntryModel
@{ Html.EnableClientValidation(); }
@using (Html.BeginForm("CreateEntry", "Entry", FormMethod.Post))
{
...various entry fields, labels and stuff...
<input type="submit" value="Add Entry"/>
}
Мой вопрос: как мне вернуть это частичное представление обратно в $("#target")
div с сообщениями об ошибках валидации.В действии контроллера, которое принимает POST из строго типизированного представления, которое я пробовал return PartialView("_CreateEntry",model)
, но оно возвращает само частичное представление, полное с сообщениями об ошибках валидации, но, конечно, само по себе, без родительского макета.
Любые идеи будут с благодарностью.Я постепенно поправляюсь, когда голосую и принимаю ответы.Прошу прощения за мою низкую статистику - я обязательно проголосую за ответы и приму их на ходу.
Спасибо, Дэни.
PS.Я использую MVC 3 последний RC