ASP.NET MVC ValidationSummary для проверки на стороне клиента
Наша проверка на стороне сервера (с помощью аннотаций данных) работает отлично и публикует ошибки в нашей ValidationSummary так, как нам нравится. Проверка на стороне клиента также работает, однако ошибки отображаются справа от элемента управления, а сводка проверки никогда не отображается. Есть ли простой способ сделать так, чтобы экран проверки клиента был похож на экран проверки на стороне сервера?
3 ответа
Если вы говорите об использовании ASP.NET MVC 2 Preview 2 или любой другой сгенерированной проверке на стороне клиента, которая использует библиотеку проверки jQuery, вам следует проверить errorLabelContainer
а также errorContainer
в документации для библиотеки проверки jQuery.
Это должно сделать проверку на стороне клиента более похожей на сводку проверки на стороне сервера.:-)
HTHS,
Чарльз
Ps. Если вы не можете изменить $('myForm').Validate()
варианты, просто используйте $.validator.setDefaults();
подход. Хотя вы можете столкнуться с проблемами, связанными с более чем одной формой / резюме проверки на странице.
Вы должны убедиться, что для проверяемого объекта модели, что .Error
собственность от IDataErrorInfo
интерфейс не String.Empty
, Это может вызвать поведение, которое вы, кажется, имеете.
Не уверен, что это хорошая практика для использования с ASP.NET MVC 2, но с xVal легко сделать проверку на стороне клиента.
<div id="validationSummary">
<%= Html.ValidationSummary("Please fix the following problems:") %>
</div>
<%= Html.ClientSideValidation("booking", typeof(Booking))
.UseValidationSummary("validationSummary") %>