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

JavaScript Discussion :

formulaire avec JS


Sujet :

JavaScript

  1. #1
    Membre confirmé
    Homme Profil pro
    Apprenti Ingénieur
    Inscrit en
    Novembre 2011
    Messages
    104
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Apprenti Ingénieur
    Secteur : High Tech - Opérateur de télécommunications

    Informations forums :
    Inscription : Novembre 2011
    Messages : 104
    Par défaut formulaire avec JS
    Bonjour !

    J'ai un soucis avec mon script de vérification de formulaire et je suis bloqué

    Il me dit que mon format de date n'est pas bon pourtant mon regex est bon je pense.

    Voici mon formulaire :

    Code html : 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
    <form id="form1" method="post" action="add.php" >
    				<p class="double">
    					<label for="f1-nom">UI:</label>
    					<select name="ui" id="ui">
    						<option value=""></option>
    						<option value="AL">AL</option>
    						<option value="BFC">BFC</option>
    						<option value="CA">CA</option>
    						<option value="NPC">NPC</option>
    						<option value="P">P</option>
    					</select>
    				</p>
    				<p class="double">
    					<label for="f1-prenom">Client:</label>
    					<input type="text" name="client" />
    				</p>
    				<p class="double">
    					<label for="f1-adresse">Adresse:
    					<span class="info">(Numéro, Rue et Ville)</span></label>
    					<input type="text" name="adresse" />
    				</p>
    				<p class="double">
    					<label for="f1-adresse">Telephone:
    					</label>
    					<input type="text" name="tel" />
    				</p>
    				<p class="double">
    					<label for="f1-ville">Nom Demandeur:</label>
    					<input type="text" name="urs" />
    				</p>
    				<p class="double">
    					<label for="f1-ville">Nature de l'Etude:</label>
    					<input type="text" name="nature" />
    				</p>
    				<p class="double">
    					<label for="f1-telephone">Arrivée THD:
    					<span class="info">(Format : YYYY-MM-JJ)</span></label>
    					<input type="text" name="arrivee" />
    				</p>
    				<p class="double">
    					<label for="f1-telephone">Dde étude:
    					<span class="info">(Format : YYYY-MM-JJ)</span></label>
    					<input type="text" name="demetude" />
    				</p>
    				<p class="double">
    					<label for="f1-telephone">CAFF/ROS:</label>
    					<select name="ascaff" id="ascaff">
    						<option value=""></option>
    						<option value="Bernard SCHATT">Bernard SCHATT</option>
    						<option value="Denis DEFFUNT">Denis DEFFUNT</option>
    						<option value="Gauthier BEURAERT">Gauthier BEURAERT</option>
    						<option value="Jacques HUET">Jacques HUET</option>
    						<option value="Ludovic MARET">Ludovic MARET</option>
    						<option value="Maxime DE VENDT">Maxime DE VENDT</option>
    						<option value="Michel LESCURE">Michel LESCURE</option>
    						<option value="Olivier GRANDTENER">Olivier GRANDTENER</option>
    						<option value="Olivier PAUCHET">Olivier PAUCHET</option>
    						<option value="Steven PAWLAK">Steven PAWLAK</option>
    						<option value="Philippe MARZIN">Philippe MARZIN</option>
    						<option value="Régis BUNY">Régis BUNY</option>
    						<option value="Richard KLEMESIAK">Richard KLEMESIAK</option>
    						<option value="Roland SIX">Roland SIX</option>
    						<option value="Thierry LAMBRE">Thierry LAMBRE</option>
    						<option value="Vincent RETHORE">Vincent RETHORE</option>
    						<option value="ZZZ GE AT UI BFC">ZZZ GE AT UI BFC</option>
    						<option value="ZZZ PIL AFF UICHAMP">ZZZ PIL AFF UICHAMP</option>
    						<option value="ZZZ PILOTAGE THD UI AL">ZZZ PILOTAGE THD UI AL</option>
    					</select>
    				</p>
    				<p class="double">
    					<label for="f1-telephone">Relance:</label>
    					<input type="text" name="relance" />
    				</p>
    				<p class="double">
    					<label for="f1-telephone">Valideur:</label>
    					<select name="valideur" id="valideur">
    						<option value=""></option>
    						<option value="Gauthier BEURAERT">Gauthier BEURAERT</option>
    						<option value="Sébastien HEU">Sébastien HEU</option>
    					</select>
    				</p>
    				<p class="double">
    					<label for="f1-infos">Commentaire Etude:
    					<span class="info">(Saisissez ici toutes les informations que vous jugerez utiles)</span></label>
    					<textarea name="commentaire" rows="150" cols="30">
    Cout Global:
     
    Delai de Prod:
     
    Ref AS D'etude si CAFF UI:</textarea>
    				</p>
    				<p class="simple">
    					<input type="button" value="Envoyer ces informations" onClick="verifForm(this.form)">
    					<input type="reset" name="reset" value="Effacer" />
    				</p>
    			</form>

    Et mon code JS :

    Code js : 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
    function verifForm(formulaire)
    {
    // var regex = new RegExp("[0-9]{4}-[0-9]{1,2}-[0-9]{1,2}");
    var regex = new RegExp("^\d{4}-([\d]|1[0,1,2])-([0-9]|[0,1,2][0-9]|3[0,1])$");
     
    if(formulaire.ui.value == "")
    	alert('Vous avez oublié de choisir une UI !');
    else if (formulaire.client.value == "")
    	alert('Vous avez oublié de saisir le client !');
    else if (formulaire.adresse.value == "")
    	alert('Vous avez oublié de saisir l\'adresse !');
    else if (formulaire.urs.value == "")
    	alert('Vous avez oublié de saisir le nom du demandeur !');
    else if (formulaire.arrivee.value == "")
    	alert('Vous avez oublié de saisir la date d\'Arrivée THD !');
    else if (formulaire.demetude.value == "")
    	alert('Vous avez oublié de saisir la date de Demande d\'Etude !');
    else if (formulaire.ascaff.value == "")
    	alert('Vous avez oublié de choisir un CAFF/ROS !');
    else if (!regex.test(formulaire.arrivee.value))
    	alert('Votre date d\'arrivée THD n\'est pas au bon format.');
    else if (!regex.test(formulaire.demetude.value))
    	alert('Votre date de demande d\'etude n\'est pas au bon format.');
    else
    	formulaire.submit();
    }

    Si quelqu'un a la solution, ça m'aiderai grandement

  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 : 54
    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
    Et pourtant non, la regex n'est pas bonne !
    Si tu utilises un constructeur, il faut doubler les antislashes :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    var regex = new RegExp("^\\d{4}-([\\d]|1[0,1,2])-([0-9]|[0,1,2][0-9]|3[0,1])$");
    Ceci dit, il est plus recommandé d'utiliser un littéral :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    var regex = /^\d{4}-([\d]|1[0,1,2])-([0-9]|[0,1,2][0-9]|3[0,1])$/;
    EDIT :
    D'autre part, dans une classe, il ne faut pas mettre de virgules !
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    var regex = /^\d{4}-([\d]|1[012])-([0-9]|[012][0-9]|3[01])$/;
    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 confirmé
    Homme Profil pro
    Apprenti Ingénieur
    Inscrit en
    Novembre 2011
    Messages
    104
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Apprenti Ingénieur
    Secteur : High Tech - Opérateur de télécommunications

    Informations forums :
    Inscription : Novembre 2011
    Messages : 104
    Par défaut
    J'ai essayé les 3 expressions mais aucune ne marche

    J'aurais fait une erreur dans mes " if " ?


  4. #4
    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 : 54
    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
    Tu n'autorises pas les mois sous la forme "05"
    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

  5. #5
    Membre confirmé
    Homme Profil pro
    Apprenti Ingénieur
    Inscrit en
    Novembre 2011
    Messages
    104
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Apprenti Ingénieur
    Secteur : High Tech - Opérateur de télécommunications

    Informations forums :
    Inscription : Novembre 2011
    Messages : 104
    Par défaut
    Donc il faudrait que je mette :

    ?

  6. #6
    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 : 54
    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
    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

  7. #7
    Membre confirmé
    Homme Profil pro
    Apprenti Ingénieur
    Inscrit en
    Novembre 2011
    Messages
    104
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Apprenti Ingénieur
    Secteur : High Tech - Opérateur de télécommunications

    Informations forums :
    Inscription : Novembre 2011
    Messages : 104
    Par défaut
    Ouiiiii ! ça marche ! Merci

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

Discussions similaires

  1. Vérification de formulaire avec regexp
    Par Shadow aok dans le forum Général JavaScript
    Réponses: 6
    Dernier message: 06/08/2007, 11h57
  2. Réponses: 7
    Dernier message: 19/10/2004, 16h12
  3. Créer un formulaire avec VBA ?
    Par Jean Bonnisme dans le forum VBA Access
    Réponses: 3
    Dernier message: 14/10/2004, 10h40
  4. Réponses: 10
    Dernier message: 10/06/2004, 16h20
  5. Gestion de formulaire avec xml et sans serveur ?
    Par meliane dans le forum XML/XSL et SOAP
    Réponses: 2
    Dernier message: 05/05/2004, 19h57

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