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 :

nom de variable dynamique


Sujet :

JavaScript

Vue hybride

Message pr�c�dent Message pr�c�dent   Message suivant Message suivant
  1. #1
    Membre confirm� Avatar de gwena54
    Homme Profil pro
    Webdesigner
    Inscrit en
    Mai 2007
    Messages
    68
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    �ge : 41
    Localisation : France, Meurthe et Moselle (Lorraine)

    Informations professionnelles :
    Activit� : Webdesigner
    Secteur : Communication - M�dias

    Informations forums :
    Inscription : Mai 2007
    Messages : 68
    Par d�faut nom de variable dynamique
    Bonjour � tous,

    je souhaite d�clarer dynamiquement des noms de variables afin de les r�utiliser dans d'autres fonctions mais je bloque un peu, voici mon code:
    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    function test(){
     
    	var tab = new Array("nom","prenom","mail");
    	var size = tab.length;
     
    	for(i=0;i<=size;i++){
    		var window[tab[i]] = document.nomform.elements[tab[i]].value;
    		}
    	alert(prenom);
    	}
    tab contient les noms de tous mes champs
    size est le nombre d'�l�ments du tableau pr�c�dent
    la boucle sert � d�finir le nom des champs de cette mani�re:
    - var window[tab[i]] pour dire var nom, var prenom...
    - document.nomform.elements[tab[i]].value; pour r�cup�rer la value des champs de mon formulaire

    le probl�me c'est que mon i n'est pas pris en compte et que �a fonctionne uniquement si je remplace le i par 0,1 ou 2, ce qui correspond au nombre d'�l�ments de mon array.

    Est ce que vous auriez une solution � mon probl�me afin que mes variables puissent se cr�er enti�rement dynamiquement?

    Merci d'avance et bon week end!
    Gwen

  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,
    le dernier �l�ment d'un array est length - 1 A+

  3. #3
    Membre Expert
    Avatar de ryan
    Homme Profil pro
    D�veloppeur Web
    Inscrit en
    Juin 2003
    Messages
    956
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations professionnelles :
    Activit� : D�veloppeur Web
    Secteur : High Tech - Multim�dia et Internet

    Informations forums :
    Inscription : Juin 2003
    Messages : 956
    Billets dans le blog
    1
    Par d�faut
    Yop!

    Il me semble tout d'abord qu'il y a une erreur dans le contr�le de la boucle: i doit �tre strictement inf�rieur � size, et non pas inf�rieur ou �gal, non?

    Edit: grill�

  4. #4
    Membre exp�riment� Avatar de marts
    Inscrit en
    F�vrier 2008
    Messages
    233
    D�tails du profil
    Informations forums :
    Inscription : F�vrier 2008
    Messages : 233
    Par d�faut
    Enl�ves var devant window.

  5. #5
    Membre confirm� Avatar de gwena54
    Homme Profil pro
    Webdesigner
    Inscrit en
    Mai 2007
    Messages
    68
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    �ge : 41
    Localisation : France, Meurthe et Moselle (Lorraine)

    Informations professionnelles :
    Activit� : Webdesigner
    Secteur : Communication - M�dias

    Informations forums :
    Inscription : Mai 2007
    Messages : 68
    Par d�faut
    Merci de vos r�ponse, j'ai un peu avanc� par contre maintenant il me met: document.nomform is undefined, et je ne vois absolument pas pourquoi...
    � tout hasard voici mon code, rien de plus simple...
    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
    <!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>Document sans nom</title>
    <script type="text/javascript">
    function test(){
     
    	tab = new Array("nom","prenom","mail");
    	size = tab.length;
     
    	for(i=0;i < size;i++){
    		window[tab[i]] = document.nomform.elements[tab[i]].value;
    		}
    	alert(nom);
    	alert(prenom);
    	alert(mail);
    	}
    	window.onload=test();
    </script>
    </head>
     
    <body>
    <form method="post" name="nomform" id="nomform">
    	<input type="text" name="nom" value="valu nom" />
    	<input type="text" name="prenom" value="valu prenom" />
    	<input type="text" name="mail" value="valu email" />
    </form>
    </body>
    </html>

  6. #6
    Membre Expert
    Avatar de ryan
    Homme Profil pro
    D�veloppeur Web
    Inscrit en
    Juin 2003
    Messages
    956
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations professionnelles :
    Activit� : D�veloppeur Web
    Secteur : High Tech - Multim�dia et Internet

    Informations forums :
    Inscription : Juin 2003
    Messages : 956
    Billets dans le blog
    1
    Par d�faut
    Yop!

    Et ceci:

    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    1
    2
     
    document.forms.monform.elements[tab[i]].value;

  7. #7
    Membre confirm� Avatar de gwena54
    Homme Profil pro
    Webdesigner
    Inscrit en
    Mai 2007
    Messages
    68
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    �ge : 41
    Localisation : France, Meurthe et Moselle (Lorraine)

    Informations professionnelles :
    Activit� : Webdesigner
    Secteur : Communication - M�dias

    Informations forums :
    Inscription : Mai 2007
    Messages : 68
    Par d�faut
    ryan, avec ton code, �a me fait une erreur encore plus bizarre: TypeError: Undefined value

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

Discussions similaires

  1. [JSTL] nom de variable "dynamique"
    Par gmonta31 dans le forum Servlets/JSP
    R�ponses: 6
    Dernier message: 04/05/2006, 13h31
  2. Nom de variable dynamique
    Par mavina dans le forum Linux
    R�ponses: 7
    Dernier message: 26/04/2006, 20h48
  3. R�ponses: 4
    Dernier message: 13/09/2005, 11h50
  4. Noms de Variables dynamiques
    Par horec dans le forum Langage
    R�ponses: 7
    Dernier message: 22/07/2005, 16h47
  5. [SQL SERVER 2000] Noms de variables dynamiques
    Par cassoulet dans le forum MS SQL Server
    R�ponses: 9
    Dernier message: 08/09/2004, 11h44

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