javascript lvl easy+ question bonus :)
Répondre à la discussion
Affichage des résultats 1 à 4 sur 4

javascript lvl easy+ question bonus :)



  1. #1
    belgianengineer

    javascript lvl easy+ question bonus :)


    ------

    bonjour,
    alors voila pour un projet scolaire je dois creer un code html/javascript demandant le prix total d'un resto et puis on dit ce que chaque personne met en jeu et le code doit nous dire qui dois quoi a qui.

    bref ma premiere question assez facile (normallement)

    comment fait on pour aller rechercher une variable dans une autre fonction le chemin reste t'il document.nomdonné.2enomdonné.v alue ou faut il rajouter quelque chose style le nom de la fonction?

    2e question, a quoi pourrait ressembler l'algoritme permettant de savoir qui dois quoi a qui? j'ai une vague idée avec des array mais pas beaucoup plus :/.

    en vous remerciant d'avance


    belgianengineer



    ps: au fait voici mon code (en construction), j'ai mis une fleche a coté du probleme de la variable a rechercher




    Code HTML:
    <html>
    <head>
    	<title>exercice finale</title>
    	<script language="javascript" >
    		
    		function secondpage() //page2
    			{
    				var nbpersonnes=(document.formulaire1.personnes.value);  //variable personnes
    			
    				//construction de la page 2
    				var page2='<table style="border:2px solid green">'
    					page2+='<tr><td>';
    				for( var pers=1 ; pers <= nbpersonnes ; pers++ )
    					{	
    						page2+='<form name="formulaire2">';
    						
    						page2+='nom de la personne '+pers+': ';
    						page2+='<input type="0"; name="nom"; value="nom"; size="20"><br> ' ;      //champ se saisie nom de la personne
    						page2+="argent qu'elle a donné: ";                                                      
    						page2+='<input type="0"; name="argent"; value="argent"; size="20"><br> ';            //champ se saisie argent donné
    						page2+='</form>';
    					}
    					page2+='<input type="button"; value="continuer"; onclick="thirdpage();"> ' ;                   //bouton générale
    					page2+='</td></tr>';
    					page2+='</table>';
    					
    					document.getElementById("formu1").innerHTML=page2;
    			}
    		
    		function thirdpage() //page3
    			{	
    				//var nbpersonnes=(document.formulaire1.personnes.value);  //variable personnes
    				var nom=(document.formulaire2.nom.value);
    				//construction de la page 3
    				var page3='<table style="border:2px solid red">'
    					page3+='<tr><td>';
    				//for( var pers=1; pers<=nbpersonnes; pers++)
    					{
    						page3+=''+nom+'';                                                         //ERREUR, comment aller rechercher la variable??                      <<-----------voici la variable que je veux
    					}                                                                                                                                                                                            aller rechercher dans le formulaire de 
    					page3+='</td></tr>';                                                                                                                                                                       la fonction 2
    					page3+='</table>';
    				document.getElementById("formu1").innerHTML=page3;
    			}
    			
    		
    			
    	</script>
    </head> 
    
    <body> 
    	
    	<h1> Remise d'argent </h1>
    	
    	<!--page 1-->
    	<p id="formu1">
    	<table style="border:2px solid blue">
    		<tr><td>
    		<form name="formulaire1">
    			Nombre de personnes: <br>
    				<input type="0"; name="personnes"; value="personnes"; size="20"><br> <!--champ se saisie personnes-->
    			Prix total du repas:<br>                                                      
    				<input type="0"; name="prix"; value="prix total"; size="20"><br> <!--champ se saisie prix total-->
    				<input type="button"; value="continuer"; onclick="secondpage();"> <!--boutton--->  
    		</form>
    		</td></tr>
    	</table>
    	</p>
    </body>
    </html>

    -----
    Dernière modification par JPL ; 27/11/2011 à 13h27. Motif: C'est mieux avec les balises html

  2. #2
    bzh_nicolas

    Re : javascript lvl easy+ question bonus :)

    Pour conserver la valeur d'un champs qui n'existe plus, tu peux :
    - Ecrire un cookie la contenant au moment du clic sur le bouton du premier formulaire, puis la relire ensuite.
    - Rajouter un champ caché dans les pages HTML générées automatiquement, que tu vas remplir avec la valeur dont tu as besoin.
    Code HTML:
    <INPUT type="hidden" value="ma_valeur" </INPUT>
    - La passer dans l'URL (méthode get ou post). Ceci ne marchera pas (simplement en tout cas) dans ton cas car tu ne navigues pas entre plusieurs pages.
    - Utiliser une variable globale. Ceci ne marchera que si tu ne charges pas de nouvelle page HTML (ce qui est le cas ici, tu ne fais que modifier le contenu).

    Par contre le tableau que tu construis sur ta 2ème page ne fonctionnera pas, tu ne pourras pas récupérer les valeurs si tu as plus de 1 personne.
    Pour voir le problème, dans firefox, tu as l'outil (si tu ne le connais pas déjà) : Développement web --> Examiner qui te montrera le code HTML généré par ton javascript plutôt que le javascript lui même.

    P.S. : pas de point virgule dans les balises HTML

  3. #3
    belgianengineer

    Re : javascript lvl easy+ question bonus :)

    Un tout grand merci pour ta réponse, je crois comprendre le syteme du champ caché, je pense que c'est celui que je vais adopter.
    je vous tient au courrant de mon avancement.

  4. #4
    belgianengineer

    Re : javascript lvl easy+ question bonus :)

    j'ai un peu assayé mais je rencontre encore quelque problèmes

    1e) je n'arrive pas a separrer les variables noms dans var page2, et que j'aimerais utiliser dans var page2bis (je remplacerais alors le +pers+)
    2e) lorsque je remplace le +pers+ justement dans var page2bis par +nom+ qui a été entré dans var page2 cela ne fonctionne pas (je ne peut meme plus acceder a la page2) :/

    merci d'avance

    voici mon nouveau code:

    Code HTML:
    <html>
    <head>
    	<title>exercice finale</title>
    	<script language="javascript" >
    		
    		//for( var pers=1 ; pers <= nbpersonnes ; pers++ )
    		//{
    		//		var naam =('document.formulaire2.nom.value');                                                //ERREUR CONSTRUCTIVE inexistance de la variable sur page1
    		//}
    			
    		function secondpage() //page2
    			{
    				var personnes=(document.formulaire1.personnes.value);  //variable personnes
    			
    				//construction de la page 2
    				var page2='<p id="formu2">'
    					page2+='<table style="border:2px solid green">';
    					page2+='<tr><td>';
    				for( var pers=1 ; pers <= personnes ; pers++ )
    					{	
    						page2+='<form name="formulaire2">';
    						page2+='nom de la personne '+pers+': ';
    						page2+='<input type="a" name="nom" value="nom" size="20"><br> ' ;      //champ de saisie nom de la personne
    						page2+="argent qu'elle a donné: ";                                                      
    						page2+='<input type="a" name="argent" value="argent" size="20"><br> ';        //champ de saisie argent donné
    						page2+='</form>';
    					}
    					page2+='<input type="button" value="continuer" onclick="thirdpage();"> ' ;            //bouton générale
    					page2+='</td></tr>';
    					page2+='</table>';
    					page2+='</p>';
    				
    				//variable permettant l'encodage des noms dans le hidden champ (transfert de variables de la fonction p2 a la p3
    				//for( var pers=1 ; pers<=personnes ; pers++)
    					//{
    				//var nom=(document.formulaire2.nom.value)
    				var page2bis='<p>';
    				for( var pers=1 ; pers<=personnes ; pers++)
    						{
    							page2bis+='<input type="hidden" name="noms" value="secondaire'+pers+' test">';             //comment definir chaque nom independamment?
    						}
    					page2bis+='</p>';
    					//}
    					
    					document.getElementById("formu1").innerHTML=page2;       //remplacement de la page 1
    					document.getElementById("champnom").innerHTML=page2bis;  //remplacement de la valeur du hidden champ
    				
    			}
    		
    		function thirdpage() //page3
    			{	
    				var noms=(document.formulaire1bis.noms.value);          //variable dans le hidden champ                                //obligé de recreer une var? ou peut     var noms=...  ??
    				var personnes=(document.formulaire1.personnes.value);  //variable personnes 
    			        // alert(""+noms+"");                         			
    				//construction de la page 3
    				var page3='<table style="border:2px solid red">'
    					page3+='<tr><td>';
    				for( var pers=1; pers<=personnes; pers++)                                      
    					{
    						page3+='nom='+noms+'<br>';                                                                 //ERREUR, comment aller rechercher la variable??
    					}
    					page3+='</td></tr>';
    					page3+='</table>';
    				document.getElementById("formu2").innerHTML=page3;
    			}
    			
    		
    	</script>
    </head> 
    
    <body> 
    
    	<h1> Remise d'argent </h1>
    	
    	<!--formulaire caché qui enregistrera des valeurs de la p2-->
    	<form name='formulaire1bis' id="champnom">
    		<input type="hidden" name="noms" value="innitial test">
    	</form> 
    	
    	<!--page 1-->
    	<p id="formu1">
    	<table style="border:2px solid blue">
    		<tr><td>
    		<form name="formulaire1">
    			Nombre de personnes: <br>
    				<input type="0" name="personnes" value="personnes" size="20"><br> <!--champ de saisie personnes-->
    			Prix total du repas:<br>                                                      
    				<input type="0" name="prix" value="prix total" size="20"><br> <!--champ de saisie prix total-->
    				<input type="button" value="continuer" onclick="secondpage();"> <!--boutton--->  
    		</form>
    		</td></tr>
    	</table>
    	</p>
    
    </body>
    </html>

  5. A voir en vidéo sur Futura

Discussions similaires

  1. question sur un lien en javascript
    Par electron+ dans le forum Programmation et langages, Algorithmique
    Réponses: 4
    Dernier message: 14/02/2011, 15h16
  2. Refraction Lumière ... question bonus !
    Par inviteb4e0d39e dans le forum Physique
    Réponses: 5
    Dernier message: 01/12/2007, 05h23
  3. [1ere S]Question Bonus
    Par manimal dans le forum Mathématiques du collège et du lycée
    Réponses: 7
    Dernier message: 25/08/2007, 08h14
  4. "Origine" de la lumiere + question bonus
    Par inviteca6037b5 dans le forum Physique
    Réponses: 12
    Dernier message: 26/02/2005, 10h53
  5. Question javascript
    Par vince dans le forum Logiciel - Software - Open Source
    Réponses: 9
    Dernier message: 31/08/2004, 14h17