Estamos tratando de crear alguna validación personalizada con anotaciones de datos MVC 4, la validación que estamos creando es una especie de mensaje más que una validación restrictiva. En primer lugar, hemos creado algunas clases de validación personalizadas heredadas de la clase ValidationAttribute y reemplazando el método IsValid() para probar los datos y devolver un ValidationResult si no es válido. La vista que muestra estos datos tiene vistas parciales que utilizan EditorTemplates para mostrar la maquinilla de afeitar generados datos utilizando nuestras anotaciones de datos personalizados y muchos construidos en la validación, todo esto está envuelto en una forma como estaMVC 4 Manual de anotación de datos personalizados Llamada de validación de jquery
@using (Html.BeginForm(new { ReturnUrl = ViewBag.ReturnUrl }))
Nuestros requisitos son para dejar el usuario después de vuelta los datos y guardar parcialmente las formas, pero los impulsan en cualquier campo no válidos por lo que están utilizando la clase CSS en el formulario de envío para permitir la devolución de datos al igual que
<input type="submit" value="Save" class="cancel"/>
Todo esto está funcionando bien, pero que tenemos ahora requisitos para mostrar todos los mensajes de error en la página carga que no vi a ser un problema hasta que lo probé ...
me encontré con algunos ejemplos que utilizan jQuery en el evento ready $ (documento) que llama la forma de métodos válidos como se ve aquí
Manual form validation in MVC 3 and JQuery
pero esto no parece funcionar para nosotros el $ ('formulario'). Validate() no parece hacer nada, la única llamada que parece desencadenar la validación de formularios es $ ('form'). Valid() Pero esto solo parece mostrar la validación incorporada tal como los atributos [Requerido] y la única forma de mostrar los mensajes de validación personalizados es usar el botón de enviar para publicar de nuevo la forma.
Debe haber una manera de hacer que mis anotaciones de datos personalizados muestren los mensajes sin publicar la página la primera vez, ¿verdad? Cualquier ayuda sería muy apreciada.
err sí, podría utilizar scripts más genéricos, pero este era un caso en el que solo tendría 1 teléfono 1 elemento móvil por página, así que es genérico pero podría cambiar el ID de la clase if ($ ('. Option1 '). Val() ==' '&& $ ('. Option2 '). Val() ==' ') y eso sería más genérico que solo los tipos de teléfono. – Troublesum