Estoy usando el complemento jQuery Validation para validar un formulario. ¿Sabe cómo forzar la revalidación en previamente exitosos campos?Plugin de validación jQuery: ¿Cómo puedo forzar la validación en campos previamente válidos?
He tratado de la función .Form utilizando el siguiente cheque (esto se lleva a cabo después de que el usuario haga clic en 'enviar'):
if ($('#form1').validate().form()==false)
{
formValid = false;
}
Sin embargo, parece que el código anterior no vuelve a intentar la validación de modo que los campos ya están validados con éxito (es decir, tienen la marca al lado) no se vuelven a verificar.
La razón para querer reintentar la revalidación en campos previamente exitosos es que se basan en la validación remota y el resultado (éxito o falla) puede cambiar entre el usuario que abandona el campo y hacer clic en enviar. (Esto se aplica a un campo 'nombre de usuario').
En caso de que afecte la respuesta, tengo que validar varios formularios (para simplificar, en el fragmento de código anterior solo me refiero a '# form1').
Gracias de antemano por cualquier consejo,
Rob
Excelente - Cancela la validación perfectamente, gracias Nick ... aunque otro problema ha surgido! Debido a que ahora está revalidando todos los formularios, recibo un error en javascript: "Error al cargar el recurso: cancelado". El problema solo ocurre cuando tengo varios formularios en la página (que es una acción impulsada por el usuario, ya que los formularios se crean dinámicamente). ¿Alguna sugerencia? – Rob
@Rob - Limpiaría solo las opciones remotas con esto, ahorrará más dolores de cabeza, ¿puedes hacerlo con un selector más específico que el anterior? Además, solo volvería a validar la que estás enviando. –
de alguna depuración, parece que el error "Error al cargar el recurso" ocurre cuando se llama a .validate(). Form() simultáneamente para dos entradas de formulario con el mismo nombre. Necesito verificar todas las entradas en el envío así que incluso tener el selector más específico todavía produce el problema. El error no ocurre si invoco .validate(). Form() manualmente en cada formulario de forma secuencial con una acción impulsada por el usuario (por ejemplo, haciendo clic en un botón 'validar') ... así que parece que necesito validar el formulario en secuencia (es decir, solo llame a la validación del siguiente formulario después de la validación exitosa del primero) ... ¿alguna sugerencia? – Rob