Я добавляю частичное представление на страницы ядра / бритвы asp.net, используя ajax()
.При использовании ненавязчивой проверки я не получаю клиентские сообщения об ошибках или имя поля из ссылки [Display(Name = "Year of Graduation")]
в сообщении об ошибке.Я просто получаю только «Это поле обязательно для заполнения».
Следующий код, кажется, позволяет работать ненавязчивой проверке:
$ajax({
//code removed for brevity
})
.done(function (response) {
//LOAD PARTIAL
$("#grad-form").html(response);
var form = $("#gaform")
.removeData("validator")
.removeData("unobtrusiveValidation");
$.validator.unobtrusive.parse(form);
});
ref: https://stackoverflow.com/a/14982495/2343826
ОднакоЯ хочу, чтобы он получил имя поля из аннотации данных в ошибке клиента.Атрибут отображения: [Display(Name = "Year of Graduation")]
Сообщение об ошибке "как есть" в недопустимом поле:
"Это поле обязательно для заполнения"
Но желаемый результат:
"Этот год окончания обязателен."
Примечание: Желаемый результат будет работать нормально, если он не был загружен динамически с AJAX().(Я думаю, мне просто нужно сбросить "unobtrusiveValidation"
после .parse(form)
, но я не знаю, как)