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 :

Emp�cher la validation d'un formulaire si champs � vide


Sujet :

JavaScript

  1. #1
    Membre �clair�
    Homme Profil pro
    Consultant en Business Intelligence
    Inscrit en
    Mai 2003
    Messages
    921
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    �ge : 43
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activit� : Consultant en Business Intelligence

    Informations forums :
    Inscription : Mai 2003
    Messages : 921
    Par d�faut Emp�cher la validation d'un formulaire si champs � vide
    Bonjour !

    je fais actuellement du J2EE et j'envois mes formulaires en les passant dans "une moulinette" appartenant � un plugin appel� "Validator" qui fonctionne c�t� client (JS) et/ou c�t� serveur (J2EE) ... tr�s connu par les J2EEistes !

    Tous mes contr�les fonctionnent parfaitement, sauf un seul type de contr�le que je ne peux mettre en oeuvre : j'ai 4 champs et soit les 2 premiers sont obligatoires, soit ce sont les 2 derniers ! Donc un coup un champ est obligatoire et dans l'autre cas il doit rester � vide ...

    Oui oui �a correspond � 2 formulaires en 1 !


    Bref bref, je voudrais savoir comment emp�cher l'envoi de mon formulaire sachant que l'envoi se fait en JS ... d�monstration :
    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    <html:form action="/FormCompareX" onsubmit="return validateFormCompareX(this);">
    J'ai bien essay� comme �a :
    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
    		<script type="text/javascript">
    			function ctrlChamps() {
    				var champ1 = document.formCompareX.xFab1.value;
    				var champ2 = document.formCompareX.xFab2.value;
    				var champ3 = document.formCompareX.xSav1.value;
    				var champ4 = document.formCompareX.xSav2.value;
     
    				if ((champ1 == "") && (champ2 == "") && (champ3 == "") && (champ4 == "")) {
    					alert("Merci de compléter correctement le formulaire.");
    					return false;
    				}
    				else {
    					return validateFormCompareX(this);
    				}
    			}
    		</script>
     
    [...]
     
    <html:form action="/FormCompareFdm" onsubmit="ctrlChamps();">

    Ca ne fonctionne pas : il m'affiche la popup, ... poste les donn�es de mon formulaire et tombe en �chec !

    Personne n'a une id�e ?

  2. #2
    R�dacteur/Mod�rateur

    Avatar de SpaceFrog
    Homme Profil pro
    D�veloppeur Web Php Mysql Html Javascript CSS Apache - Int�grateur - Bidouilleur SharePoint
    Inscrit en
    Mars 2002
    Messages
    39 659
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    �ge : 75
    Localisation : Royaume-Uni

    Informations professionnelles :
    Activit� : D�veloppeur Web Php Mysql Html Javascript CSS Apache - Int�grateur - Bidouilleur SharePoint
    Secteur : Industrie

    Informations forums :
    Inscription : Mars 2002
    Messages : 39 659
    Billets dans le blog
    1
    Par d�faut
    Ex stagiaire ... rest ele encore un peu tu n'es pas pr�t

    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    onsubmit="return validateFormCompareX(this);">
    faudrait peut �tre l'appeler la fonction de verif non ?


    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    onsubmit="return ctrlChamps();">
    et
    Ma page Developpez - Mon Blog Developpez
    Pr�sident du CCMPTP (Comit� Contre le Mot "Probl�me" dans les Titres de Posts)
    Deux r�gles du succ�s: 1) Ne communiquez jamais � quelqu'un tout votre savoir...
    Votre post est r�solu ? Alors n'oubliez pas le Tag

    Venez sur le Chat de D�veloppez !

  3. #3
    Membre �clair�
    Homme Profil pro
    Consultant en Business Intelligence
    Inscrit en
    Mai 2003
    Messages
    921
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    �ge : 43
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activit� : Consultant en Business Intelligence

    Informations forums :
    Inscription : Mai 2003
    Messages : 921
    Par d�faut
    Mouais ... et avec ton code ... quand est-ce que j'appelle :
    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    validateFormCompareX(this)
    ?

    Edit : � lire trop vite on comprend pas tout ... je l'appelle ma fonction "ctrlChamps()" � la fin de mon 2nd script !

  4. #4
    R�dacteur/Mod�rateur

    Avatar de SpaceFrog
    Homme Profil pro
    D�veloppeur Web Php Mysql Html Javascript CSS Apache - Int�grateur - Bidouilleur SharePoint
    Inscrit en
    Mars 2002
    Messages
    39 659
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    �ge : 75
    Localisation : Royaume-Uni

    Informations professionnelles :
    Activit� : D�veloppeur Web Php Mysql Html Javascript CSS Apache - Int�grateur - Bidouilleur SharePoint
    Secteur : Industrie

    Informations forums :
    Inscription : Mars 2002
    Messages : 39 659
    Billets dans le blog
    1
    Par d�faut
    elle est ou ta fonction
    ????
    Ma page Developpez - Mon Blog Developpez
    Pr�sident du CCMPTP (Comit� Contre le Mot "Probl�me" dans les Titres de Posts)
    Deux r�gles du succ�s: 1) Ne communiquez jamais � quelqu'un tout votre savoir...
    Votre post est r�solu ? Alors n'oubliez pas le Tag

    Venez sur le Chat de D�veloppez !

  5. #5
    Membre �clair�
    Homme Profil pro
    Consultant en Business Intelligence
    Inscrit en
    Mai 2003
    Messages
    921
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    �ge : 43
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activit� : Consultant en Business Intelligence

    Informations forums :
    Inscription : Mai 2003
    Messages : 921
    Par d�faut
    Aaaah celle l� ...

    Elle est g�n�r�e automatiquement dans ma page JSP finale !

    Au final, j'ai modifi� mes scripts et �a fonctionne :
    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
    		<script type="text/javascript">
    			function ctrlChamps() {
    				var champ1 = document.formCompareX.xFab1.value;
    				var champ2 = document.formCompareX.xFab2.value;
    				var champ3 = document.formCompareX.xSav1.value;
    				var champ4 = document.formCompareX.xSav2.value;
     
    				if ((champ1 == "") && (champ2 == "") && (champ3 == "") && (champ4 == "")) {
    					alert("Merci de compléter correctement le formulaire.");
    					return false;
    				}
    				else {
    					return true;
    				}
    			}
     
    [...]
     
    <html:form action="/FormCompareX" onsubmit="return ctrlChamps(); return validateFormCompareX(this);">

    G�m

  6. #6
    R�dacteur/Mod�rateur

    Avatar de SpaceFrog
    Homme Profil pro
    D�veloppeur Web Php Mysql Html Javascript CSS Apache - Int�grateur - Bidouilleur SharePoint
    Inscrit en
    Mars 2002
    Messages
    39 659
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    �ge : 75
    Localisation : Royaume-Uni

    Informations professionnelles :
    Activit� : D�veloppeur Web Php Mysql Html Javascript CSS Apache - Int�grateur - Bidouilleur SharePoint
    Secteur : Industrie

    Informations forums :
    Inscription : Mars 2002
    Messages : 39 659
    Billets dans le blog
    1
    Par d�faut
    oui m�me si dans une utilisation correcte de soumission de form avec on submit il faudrait faire ...


    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    1
    2
     
    <html:form action="javascript:validateFormCompareX(this)" onsubmit="ctrlChamps();">
    mais du coup je sais pas � quoi sert ton
    Ma page Developpez - Mon Blog Developpez
    Pr�sident du CCMPTP (Comit� Contre le Mot "Probl�me" dans les Titres de Posts)
    Deux r�gles du succ�s: 1) Ne communiquez jamais � quelqu'un tout votre savoir...
    Votre post est r�solu ? Alors n'oubliez pas le Tag

    Venez sur le Chat de D�veloppez !

  7. #7
    Membre �clair�
    Homme Profil pro
    Consultant en Business Intelligence
    Inscrit en
    Mai 2003
    Messages
    921
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    �ge : 43
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activit� : Consultant en Business Intelligence

    Informations forums :
    Inscription : Mai 2003
    Messages : 921
    Par d�faut
    Tu as effectivement raison ... je t'explique !

    La balise Action contient le code qui me permet d'ex�cuter le pourquoi du comment de mon formulaire, c'est donc une servlet (pour faire simple) qui se cache derri�re.

    La balise onSubmit me permet de lancer une validation plus ou moins automatique (c�t� client et/ou c�t� serveur) des champs de mon formulaire gr�ce au plugin "Validator" dont je parlais auparavant. Enfin, sauf dans le cas (particulier) o� tous mes champs sont vides !

    En fait, si le JS est d�sactiv� : le plugin utilise des scripts c�t� Serveur permettant de r�aliser malgr� tout la validation et �viter un plantage !

    Pour finir, une fois le process de validation pass�, il se d�brouille pour faire "une redirection" vers la balise Action afin d'ex�cuter effectivement le code permettant l'interpr�tation des donn�es de mon formulaire.

  8. #8
    R�dacteur/Mod�rateur

    Avatar de SpaceFrog
    Homme Profil pro
    D�veloppeur Web Php Mysql Html Javascript CSS Apache - Int�grateur - Bidouilleur SharePoint
    Inscrit en
    Mars 2002
    Messages
    39 659
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    �ge : 75
    Localisation : Royaume-Uni

    Informations professionnelles :
    Activit� : D�veloppeur Web Php Mysql Html Javascript CSS Apache - Int�grateur - Bidouilleur SharePoint
    Secteur : Industrie

    Informations forums :
    Inscription : Mars 2002
    Messages : 39 659
    Billets dans le blog
    1
    Par d�faut
    et donc le onsubmit avec le return de la validation avant de lancer ta seconde fonction est la solution ...
    Je comprends mieux comme �a
    Ma page Developpez - Mon Blog Developpez
    Pr�sident du CCMPTP (Comit� Contre le Mot "Probl�me" dans les Titres de Posts)
    Deux r�gles du succ�s: 1) Ne communiquez jamais � quelqu'un tout votre savoir...
    Votre post est r�solu ? Alors n'oubliez pas le Tag

    Venez sur le Chat de D�veloppez !

  9. #9
    Membre �clair�
    Homme Profil pro
    Consultant en Business Intelligence
    Inscrit en
    Mai 2003
    Messages
    921
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    �ge : 43
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activit� : Consultant en Business Intelligence

    Informations forums :
    Inscription : Mai 2003
    Messages : 921
    Par d�faut
    Citation Envoy� par SpaceFrog
    et donc le onsubmit avec le return de la validation avant de lancer ta seconde fonction est la solution ...
    Je comprends mieux comme �a
    Exactement !

    PS : entre-temps j'ai �dit� mon post ... pour que ce soit plus claire !

  10. #10
    Membre �clair�
    Homme Profil pro
    Consultant en Business Intelligence
    Inscrit en
    Mai 2003
    Messages
    921
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    �ge : 43
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activit� : Consultant en Business Intelligence

    Informations forums :
    Inscription : Mai 2003
    Messages : 921
    Par d�faut
    Citation Envoy� par SpaceFrog
    et donc le onsubmit avec le return de la validation avant de lancer ta seconde fonction est la solution ...
    Donc c'est bon je peux arr�ter les stages ?


    G�m

+ R�pondre � la discussion
Cette discussion est r�solue.

Discussions similaires

  1. [UI] jquery-validate : Envoi du formulaire et champ required vide
    Par antrax2013 dans le forum jQuery
    R�ponses: 4
    Dernier message: 19/03/2014, 10h51
  2. R�ponses: 3
    Dernier message: 16/04/2010, 10h44
  3. [MySQL] Formulaire de champ vide avec mysql_real_escape_string()
    Par Seta-san dans le forum PHP & Base de donn�es
    R�ponses: 6
    Dernier message: 04/02/2008, 17h27
  4. ouverture formulaire avec champ vide
    Par atlantideD dans le forum IHM
    R�ponses: 3
    Dernier message: 16/05/2007, 12h36
  5. [ODBC] Valider formulaire avec champs vides
    Par dorot dans le forum PHP & Base de donn�es
    R�ponses: 14
    Dernier message: 12/07/2006, 17h15

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