2009-06-11 10 views
2

J'ai la forme suivante:JQuery - Valider() et regroupement des éléments de forme similaire

http://fuzzysiberians.com/app4.cfm

quand il n'y a pas de numéro de sécurité sociale, mon message d'erreur est affiché après chaque champ de texte. Existe-t-il un moyen de regrouper ces messages d'erreur de sorte qu'il y aura 3 zones de texte l'une à côté de l'autre et ensuite afficher un seul message d'erreur? Pourquoi ne pas avoir SSN comme un seul champ?

+1

grâce RSolberg. Je ne savais pas sur le masque(). i fini par ajouter: groupes: {\t ssn: "ssn3 ssn1 ssn2" \t}, errorPlacement: function (erreur, élément) { if (element.attr ("name") == "ssn1" | | element.attr ("nom") == "ssn2" || élément.attr ("nom") == "ssn3") error.insertAfter ("# ssn3"); sinon error.insertAfter (élément); } à ma fonction validate(). – CFNinja

Répondre

0

Actuellement, vous avez 3 champs de texte séparés pour chaque partie du SSN.

Ou, il existe plusieurs champs d'édition masqués qui ajouteront automatiquement les tirets dans le champ pour l'utilisateur. Mais il s'agit d'un cas où l'utilisateur aurait l'habitude d'entrer leur numéro entier comme indiqué pour l'entrer dans des parties.

6

Plutôt que d'avoir 3 champs différents pour le numéro de sécurité sociale, j'utiliserais un seul champ qui est masqué pour le format ### - ## - ####.

Vous pouvez alors avoir la règle de validation unique dans la zone d'entrée unique.

jQuery Masked Input Plugin

$("#ssn").mask("999-99-9999"); 

Voici un exemple de code en utilisant un seul champ pour en même temps que le SSN plugin validate et le plugin entrée masquée ...

<form id="myForm"> 
<fieldset> 
    <legend>My Sample Form</legend> 
    <label><strong>Name:</strong></label><br /> 
    <input name="name" id="name" /> 
    <br /> 
    <label><strong>SSN:</strong></label><br /> 
    <input name="ssn" id="ssn" /> 
    <br /> 
    <input class="submit" type="submit" value="submit" /> 
</fieldset> 
</form> 

<script language="javascript"> 
    jQuery(function($) { 
     $("#ssn").mask("999-99-9999"); 
     // validate signup form on keyup and submit 
     $("#myForm").validate({ 
      rules: { 
       name: "required", 
       ssn: "required", 
      }, 
      messages: { 
       name: "Please enter your name!", 
       ssn: "Please enter your ssn!" 
      } 
     }); 

    }); 
</script> 
+0

le plugin est génial, merci:) – CFNinja

+0

bon à entendre. Je l'ai utilisé quelques fois pour des choses comme le numéro de téléphone et SSN. – RSolberg