[js] variabele als object

Pagina: 1
Acties:

  • wilcodl
  • Registratie: September 2004
  • Laatst online: 09-02 11:24
Ik heb een probleem met een javascriptje.
Ik roep bv de function show_it(1) aan en dan wil ik dat dit uitgevoerd word:
document.all.1.style.visibility = "visible";

als het 2 is dan moet dit worden uitgevoerd:
document.all.2.style.visibility = "visible";
enz, enz

Hoe moet ik dit aanpassen? zoiets als:
document.all.+box+.style.visibility = "visible";
maar dat werkt natuurlijk niet.

JavaScript:
1
2
3
function show_it(box){
document.all.box.style.visibility = "visible";
}

  • DEVoTi0N
  • Registratie: Mei 2005
  • Laatst online: 21-12-2025
Tja, ik weet niet of zoiets kan met js, maar je kan het altijd oplossen door gebruik te maken van 'if' (if (box == "1") { bla bla bla)

Verwijderd

Javascript basics. Arrays zijn als objecten en andersom. document.all[box].style.visibility

document.all is trouwens te ranzig voor woorden. Sterk verouderd en alleen voor Internet Explorer. Gebruik dan bijvoorbeeld gewoon document.getElementById(box) of andere DOM functies. Of beter nog: geef in functieaanroepen een referentie mee van het object dat de functie aanroept (met this).
DEVoTi0N schreef op donderdag 24 augustus 2006 @ 19:06:
Tja, ik weet niet of zoiets kan met js, maar je kan het altijd oplossen door gebruik te maken van 'if' (if (box == "1") { bla bla bla)
Zulke antwoorden kun je beter niet geven. Het is echt te slecht voor woorden om dergelijke contructies te gaan gebruiken. Slechte gewoonte, afleren dus.

[ Voor 34% gewijzigd door Verwijderd op 24-08-2006 19:09 ]


  • wilcodl
  • Registratie: September 2004
  • Laatst online: 09-02 11:24
Bedankt,

ik heb het zo opgelost:

JavaScript:
1
2
3
function show_it(box){
document.getElementById(box).style.visibility = "visible";
}