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 :

Incoh�rence avec onsubmit ?


Sujet :

JavaScript

  1. #1
    Membre averti
    Profil pro
    Inscrit en
    Janvier 2009
    Messages
    54
    D�tails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Janvier 2009
    Messages : 54
    Par d�faut Incoh�rence avec onsubmit ?
    Bonjour,

    J'ai beaucoup lu � ce sujet. J'ai simplement envie de v�rifier un formulaire avant envoi. Classique, oui, mais l� �a ne marche pas.

    Mon premier essai :

    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    1
    2
    3
    4
    5
    function valider(form)
    		{
    			alert("Saisissez les données");
    			return false;
    		}
    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    1
    2
    3
    4
    <form name="formulaire" id="formulaire" method="post" action="questionnaire.php" onsubmit="return valider(this)">
    ...
    ...
    <input type="submit" name="valider" value="Valider le questionnaire" />
    IE :Il ne se passe rien. M�me pas d'alert.
    FIREFOX : Le formulaire est tout le temps envoy� malgr� le return false.

    Note: En enlevant le "this" pour faire onsubmit ="return valider()" et function valider() �a ne change strictement rien.

    Deuxi�me essai :
    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    <form name="formulaire" id="formulaire" method="post" action="questionnaire.php" onsubmit="return false">
    L�, quand m�me, le formulaire ne s'envoie pas, ni IE ni Firefox.

    O� est ce que je me trompe dans mon premier essai ?

    Merci !

  2. #2
    R�dacteur/Mod�rateur
    Avatar de andry.aime
    Homme Profil pro
    Inscrit en
    Septembre 2007
    Messages
    8 391
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Ile Maurice

    Informations forums :
    Inscription : Septembre 2007
    Messages : 8 391
    Par d�faut
    Salut,
    Vire le return dans le onsubmit.
    Code HTML : S�lectionner tout - Visualiser dans une fen�tre � part
    <form name="formulaire" id="formulaire" method="post" action="questionnaire.php" onsubmit="valider(this)">
    Modifie le nom de la param�tre "form" car �a peut te causer un probl�me.

  3. #3
    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
    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    1
    2
    3
    <form name="formulaire" id="formulaire" method="post" action="questionnaire.php" onsubmit="return valider(this.form)">
    ...
    ...

    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    1
    2
    3
    4
    5
    function valider(monform)
    		{
    			alert("Saisissez les données");
    			return false;
    		}
    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 !

  4. #4
    Membre Expert Avatar de franculo_caoulene
    Profil pro
    Inscrit en
    Octobre 2003
    Messages
    2 880
    D�tails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2003
    Messages : 2 880
    Par d�faut emp�cher la soumission de formulaire
    Salut,

    Ceci est l'illustration de ton cas :
    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
    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
    <html xmlns="http://www.w3.org/1999/xhtml">
    <head>
       <title>empêcher la soumission de formulaire</title>
       <meta http-equiv="Content-type" content="text/html; charset=UTF-8" />
       <style type="text/css">
       </style>
    </head>
    <body>
      <form id="f" action="" method="post" onsubmit="return fn(this);">
        <input id="b1" type="submit" name="b" value="b1" />
      </form>
      <script type="text/javascript">
      <!--
      function fn(form) {
        alert(form);
        return false;
      }
      //-->
      </script>
    </body>
    </html>
    Et �a fonctionne, j'aurais tendance � dire que l'erreur est ailleurs.

  5. #5
    Membre averti
    Profil pro
    Inscrit en
    Janvier 2009
    Messages
    54
    D�tails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Janvier 2009
    Messages : 54
    Par d�faut
    J'ai essay� vos astuces, �a ne change rien.

    Et je suis �tonn� de voir que le code de franculo_caoulene marche
    Mon formulaire ne contient pourtant que des input radio / text, des select etc...

    Avant que j'enl�ve tout pour voir d'o� vient l'erreur, vous n'avez pas une id�e ?

    Merci quand m�me !

  6. #6
    Membre Expert Avatar de franculo_caoulene
    Profil pro
    Inscrit en
    Octobre 2003
    Messages
    2 880
    D�tails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2003
    Messages : 2 880
    Par d�faut
    Citation Envoy� par jean1190 Voir le message
    Avant que j'enl�ve tout pour voir d'o� vient l'erreur, vous n'avez pas une id�e ?
    Nous ne sommes pas devins. Repartir de z�ro est dans ton cas la meilleure fa�on de faire.

  7. #7
    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
    js est activ� ???
    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 !

  8. #8
    Membre averti
    Profil pro
    Inscrit en
    Janvier 2009
    Messages
    54
    D�tails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Janvier 2009
    Messages : 54
    Par d�faut
    Oui et je l'utilise un peu partout sur mon site pour Ajax.

    "Nous ne sommes pas devins. Repartir de z�ro est dans ton cas la meilleure fa�on de faire."
    Si j'ai utilis� le smiley "", c'�tait justement pour montrer que j'avais bien compris que j'allais devoir m'y coller

    Merci en tout cas. Je reviendrais lorsque j'aurais de nouvelles informations !

  9. #9
    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
    Citation Envoy� par jean1190 Voir le message
    Oui et je l'utilise un peu partout sur mon site pour Ajax.
    Et ton formulaire est g�n�r� avec Ajax ?
    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

  10. #10
    Membre averti
    Profil pro
    Inscrit en
    Janvier 2009
    Messages
    54
    D�tails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Janvier 2009
    Messages : 54
    Par d�faut
    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
    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
    <html xmlns="http://www.w3.org/1999/xhtml">
     
    	<head>
    		<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1" />
    		<title>Questionnaire en ligne</title>
    		<meta Name="description" Content="Questionnaire en ligne" />
    		<meta Name="keywords" Content="Questionnaire congrès société clinique toxicologie" />
    		<link rel="stylesheet" media="screen" type="text/css" title="Design" href='style_main.css' />
    		<script type = "text/javascript">
    			function valider(monform)
    			{
    				alert("Saisissez les données");
    				return false;
    			}
     
    		</script>
    	</head>
     
    	<body>
    		<div id = "questionnaire">
    			<form name="formulaire" id="formulaire" method="post" action="questionnaire.php" onsubmit="return valider(this);">
    				<div id ="bouton"> 
    					<input type="submit" name="valider" value="Valider le questionnaire" />
    				</div>
    			</form>
    		</div>									
    	</body>
    </html>
    J'ai tout enlev�, il ne reste plus que �a. Et �a ne marche toujours pas. Le formulaire est envoy� directement.
    J'ai essay� une nouvelle fois d'enlever le return, d'ajouter this.form... Rien ne semble fonctionner.

    Je tenais � pr�ciser qu'en copiant collant le code de notre ami franculo, �a fonctionne.
    Je ne vois franchement pas o� est mon erreur.

  11. #11
    Membre averti
    Profil pro
    Inscrit en
    Janvier 2009
    Messages
    54
    D�tails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Janvier 2009
    Messages : 54
    Par d�faut
    Citation Envoy� par Bovino Voir le message
    Et ton formulaire est g�n�r� avec Ajax ?
    Absolument pas, c'est vraiment le formulaire "de base". C'est juste un questionnaire tout simple. Un document HTML, un script PHP pour remplir la base de donn�es, et (j'aimerais) une fonction javascript pour v�rifier que tous les champs sont bien remplis.

  12. #12
    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
    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    <script type = "text/javascript">
    Evite les espaces entre les attributs et leur valeur.
    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

  13. #13
    Membre averti
    Profil pro
    Inscrit en
    Janvier 2009
    Messages
    54
    D�tails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Janvier 2009
    Messages : 54
    Par d�faut
    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    1
    2
    3
    4
    5
    6
    <form id="formulaire" method="post" action="questionnaire.php" onsubmit="return fn(this);">
    ...
    function fn(form) {
    			alert(form);
    			return false;
    		}
    Ca marche !

    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    1
    2
    3
    4
    5
    6
    <form id="formulaire" method="post" action="questionnaire.php" onsubmit="return valider(this);">
    ...
    function valider(form) {
    			alert(form);
    			return false;
    		}
    Ca ne marche pas !

    Voil� mes conclusions : je n'y comprends rien.
    J'ai essay� plusieurs fois, et je confirme que le mot "valider" fait tout bugguer. J'ai essay� avec "tartanpion" �a marche

    P-S: Merci Bovino, j'ai corrig� au passage !

  14. #14
    Membre Expert Avatar de franculo_caoulene
    Profil pro
    Inscrit en
    Octobre 2003
    Messages
    2 880
    D�tails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2003
    Messages : 2 880
    Par d�faut
    L'attribut name du bouton submit doit �tre diff�rent du nom de la fonction.

  15. #15
    Membre averti
    Profil pro
    Inscrit en
    Janvier 2009
    Messages
    54
    D�tails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Janvier 2009
    Messages : 54
    Par d�faut
    Bizarre qu'il y ait une corr�lation entre les deux. Tu dis �a comme si c'�tait d'une logique �vidente

  16. #16
    Membre Expert Avatar de franculo_caoulene
    Profil pro
    Inscrit en
    Octobre 2003
    Messages
    2 880
    D�tails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2003
    Messages : 2 880
    Par d�faut ne pas nommer une fonction comme un �l�ment de formulaire
    H� bien oui, avec un �l�ment de formulaire et une fonction portant le m�me nom on obtiens ceci :
    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
    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
    <html xmlns="http://www.w3.org/1999/xhtml">
    <head>
       <title>ne pas nommer une fonction comme un élément de formulaire</title>
       <meta http-equiv="Content-type" content="text/html; charset=UTF-8" />
       <style type="text/css">
       </style>
    </head>
    <body>
      <form id="f" action="" method="post" onsubmit="alert(valider);return false;">
        <input id="b1" type="submit" name="valider" value="b1" />
      </form>
      <script type="text/javascript">
      <!--
      function valider() {
        alert("blah");
      }
      //-->
      </script>
    </body>
    </html>
    L'alerte ne trouve pas la fonction, mais le bouton de soumission. Elle consid�re valider comme le raccourci de document.forms[0].valider, CQFD.

  17. #17
    Membre averti
    Profil pro
    Inscrit en
    Janvier 2009
    Messages
    54
    D�tails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Janvier 2009
    Messages : 54
    Par d�faut
    Merci beaucoup

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

Discussions similaires

  1. champ vide avec onsubmit
    Par afrodje dans le forum G�n�ral JavaScript
    R�ponses: 4
    Dernier message: 15/10/2007, 15h55
  2. R�sultat requ�te incoh�rent avec DAO
    Par ajuveneton dans le forum VBA Access
    R�ponses: 2
    Dernier message: 01/06/2007, 17h02
  3. pb avec OnSubmit ds le form
    Par MANU_2 dans le forum Balisage (X)HTML et validation W3C
    R�ponses: 4
    Dernier message: 31/08/2006, 09h24
  4. probleme formulaire avec onsubmit
    Par hebus44 dans le forum G�n�ral JavaScript
    R�ponses: 3
    Dernier message: 22/08/2006, 22h20
  5. [C#] tri datagrid et incoh�rence avec la DataSource
    Par chasis.fan dans le forum Windows Forms
    R�ponses: 2
    Dernier message: 21/12/2005, 17h54

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