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 :

Vérifier des zones de texte


Sujet :

JavaScript

  1. #1
    Membre régulier
    Homme Profil pro
    Enseignant
    Inscrit en
    Juin 2012
    Messages
    317
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Enseignant
    Secteur : Enseignement

    Informations forums :
    Inscription : Juin 2012
    Messages : 317
    Points : 101
    Points
    101
    Par défaut Vérifier des zones de texte
    Re bonjour :
    j’essaie de créer une fonction pour obliger l'utilisateur à remplir un formulaire mais je ne sais pas comment imbriquer les si et je suis loin d'être sur de la syntaxe
    je crois que c'est un peu tirer par les cheveux comme code d'autant plus que j'ai des "requiered" au zone de texte mais je ne trouve pas comment les utilisés
    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
     
    functionrif(){
    		 if questionEnCour = 0 and document.getElementById("NomDeFamille").value = "none";{
    				alert(Veuillez renseigner votre nom de famille);
    				}
    		if questionEnCour = 0 and document.getElementById("Prenom").value = "none";{
    				alert(Veuillez renseigner votre Prenom);
    				}
    		if questionEnCour = 0 and document.getElementById("courriel").value = "none";{
    				alert(Veuillez renseigner votre adresse de messagerie);
    				}
    		if questionEnCour = 0 and document.getElementById("Tel").value = "none";{
    				alert(Veuillez renseigner un numéro de téléphone);
    				}
    		if questionEnCour = 0 and document.getElementById("rue").value = "none";{
    				alert(Veuillez renseigner la rue);
    				}
    		if questionEnCour = 0 and document.getElementById("CodePostal").value = "none";
    				alert(Veuillez renseigner le code postal);
    				}
    		if questionEnCour = 0 and document.getElementById("ville").value = "none";{
    				alert(Veuillez renseigner la ville);
    				}
    		if questionEnCour = 0 and document.getElementById("entreprise").value = "none";{// si lvide
    				alert(Veuillez renseigner votre entreprise);
    				}
    		if questionEnCour = 0 and document.getElementById("motdepasse").value <> cfctp;{// si le mot de passe est différent de cfctp
    				alert(le mot de passe est invalide);
    				}
    				}
    un petit coup de main serait le bienvenu, merci d'avance

  2. #2
    Membre confirmé
    Homme Profil pro
    Analyse système
    Inscrit en
    Mai 2014
    Messages
    388
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Arménie

    Informations professionnelles :
    Activité : Analyse système
    Secteur : Arts - Culture

    Informations forums :
    Inscription : Mai 2014
    Messages : 388
    Points : 580
    Points
    580
    Par défaut
    Bonsoir,
    Quelque chose dans ce genre, peut-être?

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    functionrif(){
    		if (questionEnCour = 0 && document.getElementById("NomDeFamille").value = "") alert("Veuillez renseigner votre nom de famille");
    		else if (questionEnCour = 0 && document.getElementById("Prenom").value = "") alert("Veuillez renseigner votre Prenom");
    		else if (questionEnCour = 0 && document.getElementById("courriel").value = "") alert("Veuillez renseigner votre adresse de messagerie");
    ....
    }

  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 : 73
    Localisation : Belgique

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

    Informations forums :
    Inscription : Février 2009
    Messages : 6 389
    Points : 22 933
    Points
    22 933
    Billets dans le blog
    125
    Par défaut


    La validation d'un formulaire se fait lorsque l'utilisateur clique sur le bouton valider. C’est uniquement à ce moment que les systèmes de validation (l'attribut required et autre RegExp) vont attirer l'attention de l'utilisateur sur chaque champ du formulaire qui ne correspond pas aux critères que vous avez définis.

    https://developer.mozilla.org/fr/doc...ees_formulaire

    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 extrêmement actif
    Homme Profil pro
    Administrateur de base de données
    Inscrit en
    Avril 2018
    Messages
    537
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Administrateur de base de données

    Informations forums :
    Inscription : Avril 2018
    Messages : 537
    Points : 634
    Points
    634
    Par défaut
    Bonsoir,

    L'attribut required empêche l'envoi du formulaire si le champ n'a pas été rempli convenablement
    Cela affiche une notification sous forme de bulle a coté du ou des champs en bénéficiant

    Puis je voir votre code html si cette information n'apparait pas?

  5. #5
    Membre régulier
    Homme Profil pro
    Enseignant
    Inscrit en
    Juin 2012
    Messages
    317
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Enseignant
    Secteur : Enseignement

    Informations forums :
    Inscription : Juin 2012
    Messages : 317
    Points : 101
    Points
    101
    Par défaut
    bonjour et merci pour vos réponses

    en fait avec un bouton ça fonctionne, j'utiliser une image en guise de bouton et je n'ai pas su lui donner le bon code

    merci à tous

  6. #6
    Membre extrêmement actif
    Homme Profil pro
    Administrateur de base de données
    Inscrit en
    Avril 2018
    Messages
    537
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Administrateur de base de données

    Informations forums :
    Inscription : Avril 2018
    Messages : 537
    Points : 634
    Points
    634
    Par défaut
    de rien
    Vous pouvez mettre un bouton avec un background : url() sinon

  7. #7
    Expert éminent
    Avatar de Watilin
    Homme Profil pro
    En recherche d'emploi
    Inscrit en
    Juin 2010
    Messages
    3 094
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 35
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations professionnelles :
    Activité : En recherche d'emploi

    Informations forums :
    Inscription : Juin 2010
    Messages : 3 094
    Points : 6 755
    Points
    6 755
    Par défaut
    Citation Envoyé par dmoluc Voir le message
    je suis loin d'être sur de la syntaxe
    Je te l’ai déjà dit dans un autre de tes fils mais j’insiste, utilise la console F12, tu verras tout de suite les erreurs de syntaxe au lieu d’avancer à l’aveugle. Tu vas faire un bond en efficacité.

    Ici :
    Premier problème, il faut des parenthèses autour de la condition :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    if (condition) {
      ...
    }
    Si tu veux tester plusieurs conditions, le « and » s’écrit && :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    if (condition1 && condition2) {
      ...
    }
    Pour tester une égalité, le triple-égal === est conseillé, car le double == ne vérifie pas les types et fait des conversions surprenantes. De plus, avec trois signes égal, tu as moins de chance d’en oublier un et de faire une affectation au lieu d’une comparaison.

    Pour ne rien laisser au hasard, mets la valeur littérale (dans ton exemple, le 0 ou la chaîne "none") à gauche, comme ça si tu oublies un signe égal, ça lèvera une erreur et tu le verras tout de suite :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    if (0 === questionEnCour && "none" === document.getElementById("NomDeFamille").value) {
      ...
    }
    On appelle ça une Yoda condition.

    Comme tous tes if font le même test 0 === questionEnCour, tu peux le regrouper dans un seul test qui englobe les autres :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    functionrif() {
      if (0 === questionEnCour) {
        if ("none" === document.getElementById("NomDeFamille").value) {
          ...
        }
        if ("none" === document.getElementById("Prenom").value) {
          ...
        }
        ... etc.
      }
    }
    Autre erreur de syntaxe ici :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    alert(Veuillez renseigner votre nom de famille);
    Il manque les guillemets pour faire une chaîne. L’interpréteur voit le mot Veuillez qu’il va essayer d’interpréter comme une variable, puis il va se plaindre que la variable Veuillez n’existe pas.

    La bonne syntaxe est :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    alert("Veuillez renseigner votre nom de famille");
    Je reviens sur cette valeur "none", ce n’est probablement pas ce que tu veux tester. Je pense que tu veux plutôt vérifier si le champ n’est pas vide. Pour ça tu peux comparer avec la chaîne vide, ou mieux, vérifier que la value contient autre chose que des espaces avec la méthode trim :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    if ("" !== document.getElementById("NomDeFamille").value.trim()) {
      ...
    }
    Le code se lit comme suit :
    • Prends la valeur du champ NomDeFamille
    • supprime tous les espaces à gauche et à droite (méthode trim)
    • vérifie que ce n’est pas égal à la chaîne vide ""


    En JS, c’est l’opérateur !== qui fait « différent de », il est le complément du triple-égal === (tout comme != est le complément de ==). L’opérateur <> n’existe pas.

    Enfin, dernier problème avec ta variable cfctp, je pense que tu as voulu écrire une chaîne, donc encore une fois, il manque les guillemets.

    Je te propose d’appliquer toi-même toutes ces corrections à ton code, et je te mets la version finale ici en spoiler pour que tu puisses vérifier :
    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
    functionrif() {
      if (0 === questionEnCour) {
        if ("" !== document.getElementById("NomDeFamille").value) {
          alert("Veuillez renseigner votre nom de famille");
        }
        if ("" !== document.getElementById("Prenom").value) {
          alert("Veuillez renseigner votre prénom");
        }
        if ("" !== document.getElementById("courriel").value) {
          alert("Veuillez renseigner votre adresse de messagerie");
        }
        if ("" !== document.getElementById("Tel").value) {
          alert("Veuillez renseigner un numéro de téléphone");
        }
        if ("" !== document.getElementById("rue").value) {
          alert("Veuillez renseigner la rue");
        }
        if ("" !== document.getElementById("CodePostal").value) {
          alert("Veuillez renseigner le code postal");
        }
        if ("" !== document.getElementById("ville").value) {
          alert("Veuillez renseigner la ville");
        }
        if ("" !== document.getElementById("entreprise").value) {
          alert("Veuillez renseigner votre entreprise");
        }
        if ("cfctp" !== document.getElementById("motdepasse").value) {
          alert("Le mot de passe est invalide");
        }
      }
    }
    La FAQ JavaScript – Les cours JavaScript
    Touche F12 = la console → l’outil indispensable pour développer en JavaScript !

  8. #8
    Membre régulier
    Homme Profil pro
    Enseignant
    Inscrit en
    Juin 2012
    Messages
    317
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Enseignant
    Secteur : Enseignement

    Informations forums :
    Inscription : Juin 2012
    Messages : 317
    Points : 101
    Points
    101
    Par défaut
    merci ce petit cour va m'être trés utile car j'ai trop la structure VB en tête et je ne sais pas trop comment la traduire en java

  9. #9
    Expert éminent sénior
    Avatar de ProgElecT
    Homme Profil pro
    Retraité
    Inscrit en
    Décembre 2004
    Messages
    6 091
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 68
    Localisation : France, Haute Savoie (Rhône Alpes)

    Informations professionnelles :
    Activité : Retraité
    Secteur : Communication - Médias

    Informations forums :
    Inscription : Décembre 2004
    Messages : 6 091
    Points : 16 654
    Points
    16 654
    Par défaut
    Citation Envoyé par dmoluc Voir le message
    merci ......comment la traduire en java
    Citation Envoyé par NoSmoking Voir le message
    Bonjour,
    commençons par le début

    java !== javascript, ce sont deux langage différents.
    ......
    pourquoi pas, pour remercier, un pour celui/ceux qui vous ont dépannés.
    saut de ligne
    OOOOOOOOO👉 → → Ma page perso sur DVP ← ← 👈

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

Discussions similaires

  1. Définir la taille des zones de texte
    Par loutsky dans le forum Access
    Réponses: 7
    Dernier message: 06/06/2006, 19h10
  2. [VBA-E] afficher les données d'une datagrid dans des zones de textes
    Par fadwa dans le forum Macros et VBA Excel
    Réponses: 3
    Dernier message: 12/05/2006, 13h51
  3. [CSS] Positionner des zones de texte
    Par Ryan Sheckler dans le forum Mise en page CSS
    Réponses: 4
    Dernier message: 12/01/2006, 16h46
  4. : remplir des zones de texte avec une boucle For
    Par Haro_GSD dans le forum Access
    Réponses: 3
    Dernier message: 20/09/2005, 21h23
  5. Réponses: 3
    Dernier message: 21/06/2005, 11h37

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