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 :

Vérification de forumaire


Sujet :

jQuery

Vue hybride

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

    Informations forums :
    Inscription : Juin 2007
    Messages : 13
    Par défaut Vérification de forumaire
    Salut à tous.
    Je viens à vous car j'ai un petit soucis avec un formulaire, enfin plus précisément sa vérification en JS.
    Le formulaire est animé via jquerry.

    La vérification fonctionne lorsque je laisse le "return false;" à la fin du code mais ceci bloc l'envoie du mail même si tout best ok...
    Si je l'enlève, la vérification fonctionne (enfin on a le temps de voir que ça indique bien qu'un des champs n'est pas rempli si c'est le cas) mais ça envoie le mail quand même directement...
    Donc en gros, ma vérification ne fonctionne qu'à moitié!

    Je ne suis pas calé en prog donc je galère un peu et réclame votre aide car personne sur aucun forum n'a sur m'aider!

    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
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    80
    81
    82
    83
    84
    85
    86
    87
    88
    89
    90
    91
    92
    93
    94
    95
    96
    97
    98
    99
    100
    101
    102
    103
    $(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"
     
    		}, 150, function(){
     
    			$(e).animate({
     
    				fontSize:"1em"
     
    			}, 150);
     
    		});
     
    		$(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.{10}\b/; /*expr    regul 10 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 =='tel') { /* teste le format (chiffes please !) */
     
    				if((!valeur.match(re2)) || (!valeur.match(re3))) {
     
    					alerte(p);
     
    					return false;
     
    				}
     
    			}
     
    		});
     
    		return false;
     
    	});
     
    });
    Si quelqu'un voit le problème, qu'il m'en fasse part, ça serait sympa.

    ps: Le formulaire en question est ici si ça peut vous aider


    ps2: On m'avait conseillé de changer la fin de mon code apr celui-ci mais en vain:
    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
    $("form").submit(function(){ 
     
      var re1 = /^[\w-]+(\.[\w-]+)*@([\w-]+\.)+[a-zA-Z]{2,7}$/; 
      var re2 = /^[-]?\d*\.?\d*$/; 
      var re3 = /\b.{10}\b/; 
      var valide = true; 
     
      $(":input").each(function(){ 
        var valeur = $(this).val(); 
        var nom = $(this).attr("name"); 
        var label = "l_"+nom; 
        var $p = $("#"+label).parent(); 
     
        $(this).parent().find(".exemple").css({display:"none"}); 
     
        if(valeur==''){ 
          alerte($p); 
          valide = false; 
        } 
        if(nom=='eMail') { 
          if(!valeur.match(re1)) { 
            alerte(p); 
            valide = false; 
          } 
        } 
        if(nom =='tel') { 
          if((!valeur.match(re2)) || (!valeur.match(re3))) { 
            alerte(p); 
            valide = false; 
          } 
        } 
      }); 
      return valide; 
    });

    Merci d'avance.

  2. #2
    Rédacteur

    Avatar de Bovino
    Homme Profil pro
    Développeur Web
    Inscrit en
    Juin 2008
    Messages
    23 647
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 55
    Localisation : France, Gironde (Aquitaine)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juin 2008
    Messages : 23 647
    Billets dans le blog
    20
    Par défaut
    Essaye comme ça :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    $("form").submit(return function(){
    Pas de question technique par MP !
    Tout le monde peut participer à developpez.com, vous avez une idée, contactez-moi !
    Mes formations video2brain : La formation complète sur JavaScriptJavaScript et le DOM par la pratiquePHP 5 et MySQL : les fondamentaux
    Mon livre sur jQuery
    Module Firefox / Chrome d'intégration de JSFiddle et CodePen sur le forum

  3. #3
    Membre averti
    Profil pro
    Inscrit en
    Juin 2007
    Messages
    13
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2007
    Messages : 13
    Par défaut
    Salut et merci à toi.

    Malheureusement, ça ne fonctionne pas, la vérification ne se fait même plus et le mail part quand même alors qu'avant, la vérification se faisait, même si le mail partait aussi (on avait le temps de le voir avant que ça charge ma page de confirmation).

    Je me demande si une solution existe. Dur pour un infographiste de plonger dans ce monde là

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

Discussions similaires

  1. Vérification d'une requête ...
    Par Kokito dans le forum Bases de données
    Réponses: 3
    Dernier message: 24/06/2004, 13h59
  2. vérification de passage dans un select case
    Par arsgunner dans le forum ASP
    Réponses: 5
    Dernier message: 14/06/2004, 10h05
  3. [VB6] procédure de vérification d'adresse mail ?
    Par ghohm dans le forum VB 6 et antérieur
    Réponses: 12
    Dernier message: 07/06/2004, 13h05
  4. [VB.NET] Vérification d'existance d'une table
    Par Hoegaarden dans le forum Windows Forms
    Réponses: 3
    Dernier message: 18/05/2004, 10h17
  5. JavaScript de vérification de formulaire
    Par [DreaMs] dans le forum XMLRAD
    Réponses: 6
    Dernier message: 26/02/2003, 13h48

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