Tengo una aplicación web en la que he usado el motor de validación jQuery para las validaciones del lado del cliente. Esta aplicación mantiene el registro por el cual el usuario tiene que ingresar algún ID básicamente un número. Mantengo una matriz de todos los números de serie que ingresan los usuarios.

Ahora quiero una validación en el formulario, que el valor de ID ingresado por el usuario ya debe estar ingresado, los medios no deben estar en la matriz.

Por ejemplo: ids = {1,2,3,6,8}, ahora el siguiente valor de ID no puede ser los valores de los ID de matriz. Quiero escribir esa regla en el motor de validación.

var validator = $("#formId").validate({ 
        rules: { 
            uniqueId: <Rule to write here ???>, 
        }, 
        messages: { 
            uniqueId: "Entered ID already exists", 

        }, 
    }); 

Amablemente ayúdame. Además, si alguien tiene algún enlace de tutoriales o algo de donde pueda aprender todas las posibles implementaciones de reglas de validación ... sería genial .

Gracias de antemano.

0
Dhruv Bansal 26 abr. 2012 a las 06:03

1 respuesta

La mejor respuesta

Nunca he trabajado con la validación de jQuery, pero esto debería ayudarlo a comenzar. Primero crea la función de validación

function validateID(value, element) {
    if(ids.indexOf(value) > -1) {
        //value does exist in ids
    }
    else {
       //value does not exist in ids
       //(maybe add it to ids?)
    }
}

Luego agréguelo a las reglas de validación de jquery:

$.validator.addMethod("idRule", validateID, "message");

Y crea una regla:

var validator = $("#formId").validate({ 
    rules: { 
        uniqueId: { 
            idRule: true
        } 
    }, 
    messages: { 
        uniqueId: "Entered ID already exists", 

    }, 
}); 

Aquí hay una entrada de blog donde encontré gran parte de esta información, también puede resultarle útil

1
kaveman 26 abr. 2012 a las 06:37
Esto es solo una validación normal de javascript ... Quiero una regla que pueda poner en el motor de validación en jQuery ... corrígeme si me equivoco ...
 – 
Dhruv Bansal
26 abr. 2012 a las 06:14
Tienes razón, entendí mal la pregunta. He editado mi respuesta
 – 
kaveman
26 abr. 2012 a las 06:37