IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

jQuery Discussion :

Validation formulaire Jquery


Sujet :

jQuery

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Profil pro
    Inscrit en
    Février 2007
    Messages
    32
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2007
    Messages : 32
    Par défaut Validation formulaire Jquery
    Bonjour à tous,

    Je cherche à mettre en place une validation en javascript de mon formulaire. J'ai trouvé sur un site un code qui valide tout ça, en affichant les erreurs.
    LE seul problème est que le script était paramétré avec un return false en fin de fonction, ce qui empeche la soumission du formulaire.
    Masi si je supprime ce return false; le formualire est envoyé même si la validation n'est pas faite.

    Je vous mets le morceau de code javascript, si vous pouvez détecter où se trouve l'errreur.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
     $(document).ready(function() {		/* gestion du focus	/ blur */	  
    	$(":input[@type!='submit']").focus(function ()	{
    		$(this).removeClass();
    		$(this).addClass("focus");
    		$(this).parent().find(".exemple").css({display:"block"});
    	});
     
    	$(":input[@type!='submit']").blur(function	() {
    		$(this).removeClass();
    		$(this).addClass("normal");
    		$(this).parent().find(".exemple").css({display:"none"});	 
    	}); 
     
     /*effet alerte*/	  
    	function alerte(e)	{
    		$(e).animate({
    			fontSize:"1.2em"
    			}, 500,	function(){
    			$(e).animate({
    			fontSize:"1em"
    			}, 500);
    		});
    		$(e).find(":input").removeClass(); $(e).find(":input").addClass("erreur");		  
    		$(e).find(".exemple").css({display:"block"});	   
    	}
     
     /*	contrôle global	*/	   
     $("form").submit(function(){	  
    	var re1=	/^[\w-]+(\.[\w-]+)*@([\w-]+\.)+[a-zA-Z]{2,7}$/;	/*expr regul pour l'email */	 
    	var re2 = /^[-]?\d*\.?\d*$/;	/*expr regul pour les chiffres*/
    	var re3 = /\b.{5}\b/; /*expr	regul 5	caractères*/
     
    		$(":input").each(function(){			  
    		 var valeur	= $(this).val(); /*	valeur saisie par l'utilisateur	*/
    		 var nom = $(this).attr("name"); /*nom du champ	*/
    		 var label = "l_"+nom; /* id du	label */
    		 var p = $("#"+label+"").parent();			  
    		 $(this).parent().find(".exemple").css({display:"none"});			 
    		 if(valeur==''){ /*	si c'est vide c'est	pas	bon	*/
    			alerte(p);			  
    			return false;
    		 } 
     
    		 if(nom	=='eMail') { /*	teste le format	 */				 
    		   if(!valeur.match(re1)) {
    			 alerte(p);
    			 return	false;
    		   }
    		 } 
     
    		 if(nom	=='zip') { /* teste	le format (chiffes please !) */
    		   if((!valeur.match(re2)) || (!valeur.match(re3)))	{
    			  alerte(p);
    			  return false;
    		   }
    		 }
    	  });
     return	false;	   
     });
     
     });
    Merci par avance

  2. #2
    Membre averti
    Profil pro
    Inscrit en
    Février 2007
    Messages
    32
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2007
    Messages : 32
    Par défaut
    Je rajoute le code de mon formualire, dans lequel il n'y a aucun appel javascript.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    <form action="" method="post" id="inscription">
    		<p><label id="l_nom" for="nom" class="oblig" title="Veuillez saisir votre nom"> Votre Nom *</label>
    		<input type="text" id="nom" name="nom" title="Veuillez saisir votre nom" tabindex="1" value="" />
    		<span class="exemple">ex : Dupont</span></p>
     
    		<p><label id="l_prenom" for="prenom" class="oblig" title="Veuillez saisir votre prÈnom"> Votre PrÈnom *</label>
    		<input type="text" id="prenom" name="prenom" title="Veuillez saisir votre prÈnom" tabindex="2" value="" />
    		<span class="exemple">ex : Bruno</span></p>
     
    	        <p><label id="l_mail" for="mail" class="oblig" title="Veuillez saisir votre adresse e-mail"> Votre E-mail *</label>
    		<input type="text" id="mail" name="mail" title="Veuillez saisir votre adresse e-mail" tabindex="3" value="" />
    		<span class="exemple">ex : b.dupont@xxx.fr</span></p>
     
    		<p><label id="l_telephone" for="telephone" title="Veuillez saisir votre tÈlÈphone" class="oblig"> TÈlÈphone *</label>
    		<input type="text" id="telephone" name="telephone" title="Veuillez saisir votre tÈlÈphone" tabindex="4" value="" />
    		<span class="exemple">ex : 0112233445</span></p>
     
    		<p><label id="l_submit" for="submit" title="go"><span>Les champs marqués d'une * sont obligatoires</span></label><input id="submit" type="submit" name="envoi" value="Envoi" /></p>
    	</form>

  3. #3
    Rédacteur

    Avatar de danielhagnoul
    Homme Profil pro
    Étudiant perpétuel
    Inscrit en
    Février 2009
    Messages
    6 389
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 74
    Localisation : Belgique

    Informations professionnelles :
    Activité : Étudiant perpétuel
    Secteur : Enseignement

    Informations forums :
    Inscription : Février 2009
    Messages : 6 389
    Billets dans le blog
    125
    Par défaut
    Bonsoir.

    Suggère :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
     
    $("form").submit(function(){
        var boolOK = false;
     
        [...]
     
        $(":input").each(function(){
            [...]
     
            boolOK = true;
        });
     
        return boolOK;       
    });

    Blog

    Sans l'analyse et la conception, la programmation est l'art d'ajouter des bogues à un fichier texte vide.
    (Louis Srygley : Without requirements or design, programming is the art of adding bugs to an empty text file.)

  4. #4
    Membre averti
    Profil pro
    Inscrit en
    Février 2007
    Messages
    32
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2007
    Messages : 32
    Par défaut
    Merci beaucoup pour ton aide, ça a marché!!!
    Je mets le post en résolu!!

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [2.x] Validation formulaire jquery
    Par Flopp dans le forum Symfony
    Réponses: 0
    Dernier message: 27/11/2014, 17h54
  2. Validation formulaire avec jQuery
    Par y_chafaqi dans le forum jQuery
    Réponses: 6
    Dernier message: 23/08/2013, 11h10
  3. [2.x] validation formulaire symfony 2 avec jquery ?
    Par echef dans le forum Symfony
    Réponses: 3
    Dernier message: 18/02/2013, 14h59
  4. Réponses: 4
    Dernier message: 22/01/2011, 16h23
  5. Pb validation formulaire
    Par cosminutza dans le forum Général JavaScript
    Réponses: 3
    Dernier message: 03/12/2004, 10h35

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo