MVC3 Razor Ajax частичная проверка страницы - PullRequest
0 голосов
/ 07 сентября 2011

У меня есть страница стиля мастера, которую я хочу проверить страницу за раз. Поэтому, прежде чем пользователь сможет покинуть (частичную) страницу, я отправляю входные данные из div для проверки. Проверка на стороне клиента работает нормально, но на некоторых страницах есть одно или несколько полей, которые мне нужно проверить на сервере. Да, я знаю об удаленной проверке.

Я могу выполнить проверку на стороне сервера без проблем. У меня проблема, как я могу отобразить ошибки в правильных полях? Я могу найти поля в div и найти промежуток, куда должно идти сообщение об ошибке. Но я просто не могу отобразить сообщение.

Я должен что-то упустить при обновлении диапазона поля. Я хотел бы сказать, что есть подпрограмма jQuery для добавления информации об ошибке в поле. Мне нужно что-то похожее на контроллеры AddModuleError. Поэтому, когда я получаю возврат от моего $ .Post, я могу установить текст ошибки в соответствующих полях.

Есть предложения?

Ответы [ 2 ]

1 голос
/ 07 сентября 2011

Потенциальное решение вашей проблемы может быть в этой статье " Проверка на стороне клиента после результата Ajax Partial View в ASP.NET MVC 3 "

По сути, как только вы получите html из поста, вы можете вызвать проверку с помощью jQuery.validator.unobtrusive.parse ()

Согласно примеру в статье;

   $.post("YourAction", { data: <your form data> },
  function(htmlContent){
    $('#container').html(htmlContent);
    jQuery.validator.unobtrusive.parse('#content')
  }

Стоит посмотреть

0 голосов
/ 07 сентября 2011

Если вы используете прилагаемый RemoteAttribute или версию, на которую я ссылался в своем ответе на ваш другой вопрос удаленной проверки , вам не нужно беспокоиться об отображении ошибки, так как оба работаютValidationMessage помощники для автоматического отображения ошибок.

Вы добавили Html.ValidationMessage(...) или Html.ValidationMessageFor(...) для каждого проверяемого поля?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...