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

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  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 : 42
    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+

+ 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