Я использую MVC 3 с ненавязчивым javascript для проверки клиента.
У меня есть таблица со строками, на которые можно нажимать. При нажатии я хочу для вызова динамически загружаемого частичного представления Вот код для этого:
function GetStuff(id) {
$.ajax(
{
url: "Edit/" + id,
success: function (result) {
$("#DivTest").html(result);
}
});
}
Пока все работает. Проблема в том, что я пытаюсь сохранить что-то в частичке с помощью jquery. Форма взломана, например:
$(function () {
$.post($(this).attr("action"),
$(this).serialize(),
function (data) {
alert("test");
});
e.preventDefault();
});
Все это вместе делает проверку клиента неработающей. Он просто делает сообщение, даже если я пропустил некоторые обязательные значения. Все это работает, если я не использую ajax для публикации или если часть загружается при загрузке страницы (не динамически).
Что я пробовал:
Я попытался поставить это перед сообщением:
if($('form').validate().form()){
...
}
Это просто возвращает истину каждый раз ..
Из этого поста я получил 2 предложения ASP.NET MVC 2 загружает частичное представление с помощью jQuery - без проверки на стороне клиента
Добавление
Sys.Mvc.FormContext._Application_Load();
после загрузки частичного представления .. И установите тип данных сообщения на «html». Ни то, ни другое не помогло.
Я тоже безуспешно пробовал этот метод: http://www.deepcode.co.uk/2010/08/mvc-ootb-validation-when-pulling-in.html
Я думаю, эта комбинация техник является чем-то очень распространенным, почему это так? сложно заставить его работать? Любая помощь высоко ценится. Спасибо.