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 :

script qui ne fonctionne pas


Sujet :

JavaScript

  1. #1
    Membre �prouv�
    Profil pro
    Inscrit en
    Octobre 2003
    Messages
    1 249
    D�tails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2003
    Messages : 1 249
    Par d�faut script qui ne fonctionne pas
    bonjour,

    pourquoi mon script ne fonctionne pas (la detection des champs vides ne se fait pas) ?

    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
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
     
    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
    <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="fr" >
    	<head>
    		<title>TEST</title>
    		<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
     
    		<script type="text/javascript">			
    		// <![CDATA[
     
    function lance_verif(){
    	var alertTxt = "";
     
    	var listElements = document.getElementById("myForm").getElementsByTagName('input');
     
    	for (myElement in listElements){	
    		if (myElement.type == "text" ){
    			if (myElement.value.length == 0){
    				alertTxt += "Le champ " + myElement.id + " n'a pas été rempli \n";
    				document.getElementById(myElement.id + "_erreur").innerHTML = "erreur";
    			} else {
    				document.getElementById(myElement.id + "_erreur").innerHTML = "";
    			}
    		}
    	}
     
    	if (alertTxt.length != 0){
    		alert(alertTxt);	
    	} else {
    		// appel de la page php
    	}
     
    }		
     
     
    		// ]]>
    		</script>
    	</head>
     
    	<body>
    		<form id="myForm" action="">
    			<p><input type="text" id="myTextBox1"/> <span id="myTextBox1_erreur"></span></p>
    			<p><input type="text" id="myTextBox2"/> <span id="myTextBox2_erreur"></span></p>
    			<p><input type="text" id="myTextBox3"/> <span id="myTextBox3_erreur"></span></p>
     
    			<p>
    				<input type="button" value="Appliquer" id="validation" onclick="lance_verif();" />
    			</p>
    		<form>
    	</body>
    </html>

  2. #2
    Expert �minent

    Homme Profil pro
    Inscrit en
    Janvier 2007
    Messages
    13 474
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Is�re (Rh�ne Alpes)

    Informations professionnelles :
    Secteur : Finance

    Informations forums :
    Inscription : Janvier 2007
    Messages : 13 474
    Par d�faut
    Bonjour,
    parce qu'il ne trouve pas la balise de fin de ton form

    A+

  3. #3
    Membre exp�riment�
    Profil pro
    Inscrit en
    F�vrier 2007
    Messages
    265
    D�tails du profil
    Informations personnelles :
    �ge : 43
    Localisation : France

    Informations forums :
    Inscription : F�vrier 2007
    Messages : 265
    Par d�faut
    Ca devrait mieux fonctionner comme ca aussi :

    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
     
    function lance_verif(){
    	var alertTxt = "";
     
    	var listElements = document.getElementById("myForm").getElementsByTagName('input');
     
    	for(var k=0;k<listElements.length;k++) 
    	{
    		var myElement = listElements[k];
    		if (myElement.type == "text" )
    		{
    			if (myElement.value.length == 0)
    			{
    				alertTxt += "Le champ " + myElement.id + " n'a pas été rempli \n";
    							document.getElementById(myElement.id + "_erreur").innerHTML = "erreur";
    			}
    			else
    			{
    				document.getElementById(myElement.id + "_erreur").innerHTML = "";
    			}
    		}
    	}
     
    	if (alertTxt.length != 0) {
    		alert(alertTxt);
    	} else {
    		// appel de la page php
    	}
     
    }

  4. #4
    Membre �prouv�
    Profil pro
    Inscrit en
    Octobre 2003
    Messages
    1 249
    D�tails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2003
    Messages : 1 249
    Par d�faut
    ouh la boulette .... mais meme en corrigeant l'erreur, �a fait la m�me chose ...

    jln13, ta solution fonctionne (c'est comme �a que je faisais avant) mais j'aurais aim� faire fontionner mon script avec "for (myElement in listElements){"
    => je trouve �a plus �l�gant

  5. #5
    Expert �minent

    Homme Profil pro
    Inscrit en
    Janvier 2007
    Messages
    13 474
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Is�re (Rh�ne Alpes)

    Informations professionnelles :
    Secteur : Finance

    Informations forums :
    Inscription : Janvier 2007
    Messages : 13 474
    Par d�faut
    Citation Envoy� par Emcy Voir le message
    ouh la boulette .... mais meme en corrigeant l'erreur, �a fait la m�me chose ...
    Comment �a "la" boulette.
    Recompte : il y en a 2 belles

    A+

  6. #6
    Expert �minent

    Homme Profil pro
    Inscrit en
    Janvier 2007
    Messages
    13 474
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Is�re (Rh�ne Alpes)

    Informations professionnelles :
    Secteur : Finance

    Informations forums :
    Inscription : Janvier 2007
    Messages : 13 474
    Par d�faut
    Citation Envoy� par Emcy Voir le message
    j'aurais aim� faire fontionner mon script avec "for (myElement in listElements){"
    => je trouve �a plus �l�gant
    Ce n'est pas une question d'�l�gance : c'est une syntaxe VB et non JS (ceci dit, c'est vrai qu'elle est plus jolie) ...

    A+

  7. #7
    Membre �prouv�
    Profil pro
    Inscrit en
    Octobre 2003
    Messages
    1 249
    D�tails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2003
    Messages : 1 249
    Par d�faut
    Citation Envoy� par E.Bzz Voir le message
    Ce n'est pas une question d'�l�gance : c'est une syntaxe VB et non JS (ceci dit, c'est vrai qu'elle est plus jolie) ...

    A+
    pourtant dans la FAQ, il y a un exemple (que je n'arrive pas a faire fonctionner) avec cette methode : http://javascript.developpez.com/faq...#verifTousTxts

    ps : je ne trouve pas la seconde boulette...

  8. #8
    Expert �minent

    Homme Profil pro
    Inscrit en
    Janvier 2007
    Messages
    13 474
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Is�re (Rh�ne Alpes)

    Informations professionnelles :
    Secteur : Finance

    Informations forums :
    Inscription : Janvier 2007
    Messages : 13 474
    Par d�faut
    Exact.
    L'autre �tait le <form> non ferm�.

    Mais il y a peut-�tre autre chose ...

    A+

  9. #9
    Membre �prouv�
    Profil pro
    Inscrit en
    Octobre 2003
    Messages
    1 249
    D�tails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2003
    Messages : 1 249
    Par d�faut
    a priori, "myElement" renvoie l'index de l'element et non pas l'element lui meme : c'est vraiment bizarre .

    donc pour que �a fonctionne, il faut faire �a :
    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    alert(listElements[myElement].id);

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

Discussions similaires

  1. Script qui ne fonctionne pas ?
    Par Skullnyco dans le forum jQuery
    R�ponses: 2
    Dernier message: 12/02/2013, 10h20
  2. script qui ne fonctionne pas de suite
    Par ravaza dans le forum G�n�ral JavaScript
    R�ponses: 4
    Dernier message: 07/05/2012, 00h18
  3. Script qui ne fonctionne pas sous IE7
    Par carbaba dans le forum G�n�ral JavaScript
    R�ponses: 3
    Dernier message: 23/01/2008, 22h50
  4. Script qui ne fonctionne pas via un fichier Batch ?
    Par bilou95 dans le forum EDI, CMS, Outils, Scripts et API
    R�ponses: 1
    Dernier message: 31/12/2007, 16h18
  5. [Mail] Pb de script qui ne fonctionne pas
    Par Yael dans le forum Langage
    R�ponses: 5
    Dernier message: 14/02/2006, 09h27

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