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 :

Empecher la validation d'un formulaire par entrée


Sujet :

JavaScript

  1. #1
    Membre chevronné Avatar de Oluha
    Profil pro
    Inscrit en
    Novembre 2004
    Messages
    2 183
    Détails du profil
    Informations personnelles :
    Âge : 42
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations forums :
    Inscription : Novembre 2004
    Messages : 2 183
    Points : 1 967
    Points
    1 967
    Par défaut Empecher la validation d'un formulaire par entrée
    Salut

    Je sais que la question a été posée pleins de fois car j'ai fais une recherche.

    J'ai d'abord testé la solution d'un booléen global, initialisé à false et qui passe à true sur le onClick du bouton submit. Ca ne fonctionne pas, bizarrement dès que la fonction de validation du formulaire est appelée la variable est à true alors que j'ai fais entrée et donc pas cliqué sur le bouton

    J'ai ensuite testé l'autre méthode : transformer mon submit en button et sur le onClick appeler ma fonction de validation qui fera le submit si tout est ok. Le soucis c'est que si mon formulaire est bon, soit j'ai un message d'erreur sur le submit qui me dit que la fonction n'existe pas, soit je n'ai aucune erreur dans la console mais le submit ne se fait pas

    Voici le code :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    <form name="abon" id="abon" method="post" action="abo3.asp"  autocomplete="off">
     
    ...
     
    <input name="submit" type="button" id="submit" value="Valider" class="bouton" onClick="valide()">
     
    ...
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    function valide() {
     
    ...
     
    	if (erreur != "") {
    		erreur = "Veuillez renseigner :\n" + erreur;
    		alert(erreur);
    	} else {
    		document.abon.submit;
    	}
    }
    Si vous avez une idée, merci !

  2. #2
    Membre actif
    Inscrit en
    Juin 2006
    Messages
    431
    Détails du profil
    Informations forums :
    Inscription : Juin 2006
    Messages : 431
    Points : 209
    Points
    209
    Par défaut
    essaie avec:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <form name="abon" id="abon" method="post" action="abo3.asp"  autocomplete="off" onClick="valide()>

  3. #3
    Membre averti Avatar de NeHuS
    Profil pro
    Inscrit en
    Décembre 2004
    Messages
    343
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2004
    Messages : 343
    Points : 316
    Points
    316
    Par défaut
    Salut ,

    on submit du form ... c'est fait pour ça

  4. #4
    Membre chevronné Avatar de Oluha
    Profil pro
    Inscrit en
    Novembre 2004
    Messages
    2 183
    Détails du profil
    Informations personnelles :
    Âge : 42
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations forums :
    Inscription : Novembre 2004
    Messages : 2 183
    Points : 1 967
    Points
    1 967
    Par défaut
    oui je sais mais j'ai le que lu onSubmit ne se déclenchais pas quand on faisait le submit par javascript

    sinon le onlick sur la balise form, c'est pas du tout ca puisque au moindre click sur un input il me lance ma fonction

  5. #5
    Modérateur
    Avatar de Bisûnûrs
    Profil pro
    Développeur Web
    Inscrit en
    Janvier 2004
    Messages
    9 894
    Détails du profil
    Informations personnelles :
    Âge : 41
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Janvier 2004
    Messages : 9 894
    Points : 16 354
    Points
    16 354
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    document.abon.submit();

  6. #6
    Membre chevronné Avatar de Oluha
    Profil pro
    Inscrit en
    Novembre 2004
    Messages
    2 183
    Détails du profil
    Informations personnelles :
    Âge : 42
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations forums :
    Inscription : Novembre 2004
    Messages : 2 183
    Points : 1 967
    Points
    1 967
    Par défaut
    Citation Envoyé par BisounoursJos
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    document.abon.submit();
    déjà testé, ca me fait une erreur dans la console

    Erreur : document.abon.submit is not a function

  7. #7
    Modérateur
    Avatar de Bisûnûrs
    Profil pro
    Développeur Web
    Inscrit en
    Janvier 2004
    Messages
    9 894
    Détails du profil
    Informations personnelles :
    Âge : 41
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Janvier 2004
    Messages : 9 894
    Points : 16 354
    Points
    16 354
    Par défaut
    Tu peux aussi faire :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <input name="submit" type="button" id="submit" value="Valider" class="bouton" onClick="valide(this)">
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    function valide(bouton) {
       form = bouton.form;
    ...
     
       if (erreur != "") {
          erreur = "Veuillez renseigner :\n" + erreur;
          alert(erreur);
       } else {
          form.submit();
       }
    }

  8. #8
    Membre chevronné Avatar de Oluha
    Profil pro
    Inscrit en
    Novembre 2004
    Messages
    2 183
    Détails du profil
    Informations personnelles :
    Âge : 42
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations forums :
    Inscription : Novembre 2004
    Messages : 2 183
    Points : 1 967
    Points
    1 967
    Par défaut
    Citation Envoyé par BisounoursJos
    Tu peux aussi faire :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <input name="submit" type="button" id="submit" value="Valider" class="bouton" onClick="valide(this)">
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    function valide(bouton) {
       form = bouton.form;
    ...
     
       if (erreur != "") {
          erreur = "Veuillez renseigner :\n" + erreur;
          alert(erreur);
       } else {
          form.submit();
       }
    }

    déjà testé aussi et même résultat : si je met submit() j'ai une erreur dans la console et si je met submit rien ne se passe et pas d'erreur dans la console

  9. #9
    Modérateur
    Avatar de Bisûnûrs
    Profil pro
    Développeur Web
    Inscrit en
    Janvier 2004
    Messages
    9 894
    Détails du profil
    Informations personnelles :
    Âge : 41
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Janvier 2004
    Messages : 9 894
    Points : 16 354
    Points
    16 354
    Par défaut
    Essaye de changer l'id et le nom de ton bouton, on ne sait jamais. ^^

    Parce que ce code je l'utilise tout le temps et je n'ai jamais eu d'erreur avec.

  10. #10
    Membre chevronné Avatar de Oluha
    Profil pro
    Inscrit en
    Novembre 2004
    Messages
    2 183
    Détails du profil
    Informations personnelles :
    Âge : 42
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations forums :
    Inscription : Novembre 2004
    Messages : 2 183
    Points : 1 967
    Points
    1 967
    Par défaut
    je viens de changer nom et id du bouton mais toujours pareil. Je capte vraiment pas ce qui cloche.
    Même la 1ere méthode que j'ai exposée dans mon 1er post, je comprend pas pourquoi une fois dans la fonction le booléen est à true alors qu'il est bien à false quand je l'appelle au chargement de la page.

    Donc s'il existe une 3eme solution pour empecher la validation d'un formulaire avec la touche entrée, je suis preneuse.

  11. #11
    Membre confirmé
    Profil pro
    Inscrit en
    Janvier 2004
    Messages
    442
    Détails du profil
    Informations personnelles :
    Âge : 43
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Janvier 2004
    Messages : 442
    Points : 475
    Points
    475
    Par défaut
    Je ne comprends pas bien où est le problème...

    Peux-tu essayer comme ceci:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    <form id="myForm" [...] >
    <input type="button" onclick="document.getElementById('myForm').submit();" [...] />
    </form>

  12. #12
    Membre averti Avatar de NeHuS
    Profil pro
    Inscrit en
    Décembre 2004
    Messages
    343
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2004
    Messages : 343
    Points : 316
    Points
    316
    Par défaut
    oui je sais mais j'ai le que lu onSubmit ne se déclenchais pas quand on faisait le submit par javascript
    excuse moi mais pourquoi ne passe tu pas par un input type submit ? tu veux absolument utiliser la méthode Submit ?

  13. #13
    Membre chevronné Avatar de Oluha
    Profil pro
    Inscrit en
    Novembre 2004
    Messages
    2 183
    Détails du profil
    Informations personnelles :
    Âge : 42
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations forums :
    Inscription : Novembre 2004
    Messages : 2 183
    Points : 1 967
    Points
    1 967
    Par défaut
    Bon je capte plus rien mais maintenant ca fonctionne

    sinon pour répondre à NeHus, la méthode submit ne me déplait pas mais comme indiqué dans le titre je cherchais à empecher la validation du formulaire avec la touche Entrée et les solutions trouvées sur le forum donnait les 2 méthodes exposées dans le 1er post.

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

Discussions similaires

  1. Validation d'un formulaire par le bouton entrée !
    Par Le Mad dans le forum Général JavaScript
    Réponses: 11
    Dernier message: 17/11/2009, 11h28
  2. validation d'un formulaire par la touche entree
    Par crocodingo dans le forum Servlets/JSP
    Réponses: 4
    Dernier message: 05/10/2007, 16h40
  3. [HTML] Validation d'un formulaire par entrée mais sans bouton type submit
    Par legillou dans le forum Général JavaScript
    Réponses: 9
    Dernier message: 04/06/2007, 17h40
  4. Javascript : Empecher la validation d'un formulaire
    Par otb82 dans le forum Général JavaScript
    Réponses: 5
    Dernier message: 17/01/2006, 09h46
  5. comment interdire la validation d'un form par "Entrée&q
    Par taillooo dans le forum Général JavaScript
    Réponses: 16
    Dernier message: 14/09/2005, 17h33

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