8
votes

Valider plusieurs textes de texte ayant le même nom avec JQuery Validator valide uniquement la première entrée

J'essaie de valider les deux entrées ayant le même nom avec JQuery Validator .. xxx

mais lorsque j'exécute ce code, il valide uniquement les premières entrées et les secondes entrées sont simplement ignorées

J'ai aussi essayé d'utiliser
mais ne fonctionne toujours pas.

Que dois-je Changer ...?

Merci d'avance


0 commentaires

4 Réponses :


-1
votes

Oui, JQuery Validate ne validera que la première occurrence. Vous utilisez différents noms pour textboxes. OU Vous pouvez utiliser les mêmes noms mais différents identifiants. et appliquer vérifier en fonction de l'identifiant.

$ ("# myform"). Valider ({Règles: { #id_of_field: { Obligatoire: vrai, checkvalue: vrai }}});


2 commentaires

TRUE, le plug-in JQuery Validate ne fonctionnera pas lorsque deux champs doivent contenir le même nom; Seul le premier champ validera. Toutefois, déclarer des règles par ID dans .validate () n'est pas valide et ne brisera absolument tout. Voir: JSFIDDLE.net/TPG7M


Désolé cher, vous pouvez utiliser la suite pour les noms de tableau. $ ('# Myform'). Valider ({Règles: {'Data []': {REQUISE: TRUE, MINLLENGTH: 1}}});



18
votes

"J'essaie de valider les deux entrées ayant le même nom avec jQuery Validator ... " xxx

"mais quand j'exécute ce code, il valide uniquement les premières entrées et seconde Les entrées sont simplement ignorées "

Vous ne pouvez pas avoir deux entrée de type = "texte" avec le même nom nom ou ce plugin ne fonctionnera pas correctement. L'attribut nom doit être unique. (une exception au nom est unique, est-ce que "groupements" de la case à cocher ou des entrées radio partagera le même nom car la soumission correspondante est un point unique de données. Cependant, le nom doit toujours être unique à chaque regroupement de case à cocher et éléments radio.)

"Que dois-je changer ...? "

faire chaque nom Nom attribut unique. xxx

puis utilisez le sélecteur "Démarre avec", ^ = < /code >...<

P> Démo: http : //jsfiddle.net/pglh3/

notes : Vous pouvez également cibler des éléments par ID lorsque vous utilisez le Règles ('Ajouter') Méthode, cependant, pour ce cas, rien n'est résolu car le plugin nécessite toujours un unique nom sur chaque sur chaque sur chaque sur chaque sur chaque entrée élément.


5 commentaires

Merci beaucoup .. Pouvez-vous m'expliquer pourquoi il ne fonctionnait pas quand j'utilise inp_txt [] .... avec ce nom devrait devenir unique, je suppose .. ou je me trompe avec cette hypothèse ..?


@DeamCoder, car inp_text [] est exactement identique à celui inp_text [] . Comment cela serait-il «devenir unique»? Je suppose que je ne comprends pas complètement ce que vous demandez.


Il n'existe pas de unique dans la documentation.


@Ozankurt, c'est assez bien connu que cette documentation manque. Toutefois, vous êtes libre d'examiner le code source et de voir par vous-même que l'attribut nom est la manière dont ce plugin garde la piste de tous les éléments de formulaire validés. Voir aussi cette démo où le plugin échoue lorsque l'attribut nom est dupliqué: jsfiddle.net/ed3vxgmy /




Comment faire



-1
votes

amis!

Pour valider la zone de texte / la case à cocher / sélectionner avec le même nom Utilisez ce qui suit, il fonctionne bien pour moi. p>

ici 'IJYID' est le nom de la boîte de sélection. P>

function validateMinimumVal(){
    inp = document.getElementsByTagName("TEXT");
    for ( var i = 0; i < inp.length; ++i )    {
        if (inp[i].name =="minVal" && inp[i].value==''){
            alert('plesae Add a MINIMUM VALUE!!');
                return false;
            }
        }
    return true;
 }


1 commentaires

Cela ne répond pas à la question envisagée.



0
votes

ajoutez une configuration comme les règles ou messages suivants xxx

code change dans jquery.validate.js Nom de la méthode: éléments

Remplacez le texte suivant xxx

avec les suivants xxx


0 commentaires