Pregunta

Yo uso el plugin jquerylive añadir clases CSS adicionales para .field validación de errores clase como esta:

$(".field-validation-error").livequery(function () { 
    $(this).addClass('ui-state-error ui-corner-all'); 
});

cuando consigo algunos tramos con esta clase generada por las obras jquery.validate código anterior, pero al segundo validación que no.

aquí está el enlace directo: http://mrgsp.md:8080 / impresionante / persona haga clic en crear después haga clic en Guardar para obtener mensajes de validación y vuelva a hacer clic en Guardar

¿Fue útil?

Solución

¿Por qué no enganchar su función en el mismo evento que desencadena validar ()?

Actualizar

He leído los otros comentarios y vio que estaba utilizando XVal, leer un poco en jQuery.Validate también. lazos en jQuery.Validate con muchos eventos y registro de los controladores de eventos sería desordenado. La razón por la que trabaja livequery primera vez es que se generan las etiquetas si no existen previamente de manera que hace que el evento de creación función de ejecución, cada vez después de esto la etiqueta es simplemente oculta / muestra para que no se disparará de nuevo, pero jQuery. showLabel función de validar restablece las clases.

El lugar ideal es en XVal al hacer un pequeño cambio en el archivo xVal.jquery.validate.js. En el método _ensureFormIsMarkedForValidation son las líneas:

ensureFormIsMarkedForValidation: function(formElement, options) {
        if (!formElement.data("isMarkedForValidation")) {
            formElement.data("isMarkedForValidation", true);
            var validationOptions = {
                errorClass: "field-validation-error",

Todo lo que necesitará hacer es cambiar errorClass a:

errorClass: "field-validation-error ui-state-error ui-corner-all",

Esto se debe a XVal está haciendo la puesta en marcha del plug-in de validación.

Otros consejos

Puede que no sólo el la opción errorClass?

$(".selector").validate({
   errorClass: "field-validation-error ui-state-error ui-corner-all"
})

O tal vez:

$.validator.setDefaults({ 
   errorClass: "field-validation-error ui-state-error ui-corner-all"
});
Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top