Подтвердить что ты не робот

ASP.NET MVC 3: Необходимые шаги для ненавязчивой проверки на стороне клиента динамического/AJAX-контента

Каков полный набор Необходимые шаги для ненавязчивой проверки на стороне клиента для работы с динамически вставленными полями формы?

Соответствующие сообщения SO

ASP.NET MVC 3 ненавязчивая проверка на стороне клиента с динамическим контентом - Он нуждался в ненавязчивых атрибутах проверки, отображаемых в сгенерированном HTML, и сделал это, позвонив BeginForm

Проверка ASP.Net MVC 3 на AjaxForm - обманщик использовал Ajax.BeginForm, который использует MicrosoftAjax вместо JQuery.validation.

PartialView и ненавязчивая проверка клиента не работают - У него была проблема с ненавязчивыми атрибутами проверки, которые не отображаются и не перегружают ViewContext.FormContext в качестве обходного пути.

ASP.NET MVC 3: генерировать ненавязчивую проверку, когда BeginForm находится на макете - Обходной путь для ненавязчивых атрибутов проверки, которые не отображаются в HTML

Релевантные ссылки

Брэд Уилсон Ненавязчивая проверка клиента в ASP.NET MVC 3

Полное руководство для проверки в ASP.NET MVC 3 - часть 1

Полное руководство для проверки в ASP.NET MVC 3 - часть 2

Ненавязчивая проверка на стороне клиента с динамическим содержимым в ASP.NET MVC 3

4b9b3361

Ответ 1

В этот момент я считаю, что следующий полный набор требований:

  • Создайте форму с помощью Html.BeginForm
  • Включить ClientValidationEnabled
  • Включить UnobtrusiveJavaScriptEnabled
  • Установите соответствующие атрибуты проверки свойств модели (не поля)
  • Если помощники Html, используемые для создания элементов формы, не находятся в том же виде, что и вызов Html.BeginForm, используйте соответствующий обходной путь (см. обходной путь 1 и обходной путь 2)
  • Включить jquery, jquery.validate.js и jquery.validate.unobtrusive.js файлы в этом порядке
  • Убедитесь, что ненавязчивые атрибуты проверки присутствуют в HTML
  • При использовании пользовательских валидаторов:
    • убедитесь, что они добавлены в jQuery.validator.unobtrusive.adapters
    • убедитесь, что они добавлены в плагин проверки jQuery, вызвав jQuery.validator.addMethod.
    • убедитесь, что это произошло раньше $(document).ready(), поскольку в этот момент это слишком поздно.
  • Вызов jQuery.validator.unobtrusive.parse или jQuery.validator.unobtrusive.parseElement для элементов, добавленных динамически после загрузки начальной страницы.