¿Cómo se crea una regla simple y personalizada usando el complemento jQuery Validate (usando addMethod
) que no usa una expresión regular?
Por ejemplo, ¿qué función crearía una regla que valide solo si al menos una de las casillas de verificación está marcada?
javascript
jquery
jquery-validate
Eduardo
fuente
fuente
Respuestas:
Puede crear una regla simple haciendo algo como esto:
Y luego aplicando esto así:
Simplemente cambie el contenido del 'addMethod' para validar sus casillas de verificación.
fuente
fuente
remote
que otros han sugerido, pero por lo que puedo decir, solo permite una validación, por lo que no funcionaría si necesita dos validaciones asíncronas o si tiene varios mensajes de error dependiendo de la respuesta.fuente
Regla personalizada y atributo de datos
Puede crear una regla personalizada y adjuntarla a un elemento usando el
data
atributo usando la sintaxisdata-rule-rulename="true";
Entonces, para verificar si al menos una de un grupo de casillas está marcada:
data-rule-oneormorechecked
addMethod
Y también puede anular el mensaje de una regla (es decir: Debe seleccionarse al menos 1) utilizando la sintaxis
data-msg-rulename="my new message"
.NOTA
Si utiliza el
data-rule-rulename
método, deberá asegurarse de que el nombre de la regla esté en minúsculas. Esto se debe a que la función de validación jQuery sedataRules
aplica.toLowerCase()
a la comparación y la especificación HTML5 no permite mayúsculas.Ejemplo de trabajo
fuente
Gracias, funcionó!
Aquí está el código final:
fuente
Puede agregar una regla personalizada como esta:
Y agréguelo como una regla como esta:
fuente
Para este caso: formulario de registro de usuario, el usuario debe elegir un nombre de usuario que no se toma.
Esto significa que tenemos que crear una regla de validación personalizada, que enviará una solicitud http asíncrona con el servidor remoto.
fuente