Toon posts:

[JavaScript] Een variabelenaam variabel maken

Pagina: 1
Acties:

Verwijderd

Topicstarter
Oke, stel ik heb in mij form een element met de naam JAJAJA5. En nou wil ik bij de onClick bijvoorbeeld dat er een functie wordt uitgevoerd. Hieronder de functie... (niet op de functionaliteit letten want dat slaat nergens op maar zo is het makkelijker uitleggen)

code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
// i is een for i< loop waar dit in zit 
// als de naam begint met JAJAJA pas dingen gaan doen.... 
if(editUserForm.elements[i].name.substring(0,6) == "JAJAJA") 
{ 
      // ff wordt dan het getal wat er achter staat.... 
      ff = editUserForm.elements[i].name.substring(6,16); 
      
/* Nou heb ik nog een andere hidden veld in het form met de naam die begint met
NEENEENEE... en nu wil ik de value van dat bijbehorende input laten zien dus stel
dat ff nu 5 is NEENEENEE5.value... maar hoe krijg ik het zo dus dat die 5
daarachter komt? 
*/ 

// Had dus zoiets maar dat werkt niet
      alert(editUserForm.NEENEENEE+ff+.value); 
}


In PHP kan je dat doen met ${$i} als i dan bv 1 is en de inhoud van $1, 4 is geeft ie de waarde van de variabele $4 terug...

Volgens mij moet ik ook zoiets gebruiken, maar heb niks kunnen vinden in de javascript reference hierover.

Heeft iemand misschien nog een andere site die dit beschrijft of snapt wat ik bedoel en weet hoe dit kan... ?

  • drm
  • Registratie: Februari 2001
  • Laatst online: 09-06-2025

drm

f0pc0dert

Arrays gebruiken:
alert ( editUserForm [ 'NENENENENENENEEEE' + ff ].value );

Music is the pleasure the human mind experiences from counting without being aware that it is counting
~ Gottfried Leibniz


Verwijderd

Topicstarter
Ow ja.... natuurlijk stom van me... *


maar stel dat dit NEENEENEE ding nu een object is...

code:
1
2
3
4
5
6
7
function MyObject() 
{
      this.value = 4
}


NEENEENEE5 = new MyObject();


want dat is namelijk wat ik eigenlijk wil. Geprobeerd ook met een array te doen, maar dat werkte helaas niet...

  • drm
  • Registratie: Februari 2001
  • Laatst online: 09-06-2025

drm

f0pc0dert

Je moet in elk geval geen nummertjes in variabelenamen gebruiken, als je reeksen gebruikt, want daar heb je nou juist arrays voor:
code:
1
2
3
var sjaak = new Array ();

sjaak [ 5 ] = new MyObject ();


etcetera.

Music is the pleasure the human mind experiences from counting without being aware that it is counting
~ Gottfried Leibniz