Avatar billede dallan2007 Nybegynder
10. maj 2006 - 09:25 Der er 17 kommentarer og
1 løsning

document.getElementById(VARIABEL).innerHTML?

Davs - dette skulle være temmelig enkelt :).

Jeg har et script som aktivere denne del af et script:
document.getElementById('bilerdiv').innerHTML='Biler med mere';

Men i stedet for det direkte kalde på div'en med "bilerdiv" vil jeg gerne bruge en variabel, men jeg kan ikke rigtig finde det korrekt kalde-format. Jeg har prøvet med både

document.getElementById[glVar].innerHTML='Biler med mere';
document.getElementById(glVar).innerHTML='Biler med mere';

Hvad er det korrekte format?
Avatar billede Slettet bruger
10. maj 2006 - 09:28 #1
document.getElementById(glVar).innerHTML='Biler med mere'; skulle da gerne fungere...
Avatar billede dallan2007 Nybegynder
10. maj 2006 - 09:43 #2
How odd...

Dette virker fint:
glVar.style.cssText = 'background-color: #BEBEBE;';
document.getElementById('bilerdiv').innerHTML='En tekst fra ...';

Hvorimod dette ikke virker:
glVar.style.cssText = 'background-color: #BEBEBE;';
document.getElementById(glVar).innerHTML='En tekst fra ...';

Hvis jeg prøver at lave et document.write(glVar) skriver den bare [object].
Avatar billede dallan2007 Nybegynder
10. maj 2006 - 09:47 #3
Hmm.. nu skriver den ikke [object] mere. Og script-fejlfinderen siger at (...) er null eller et objekt.
Avatar billede Slettet bruger
10. maj 2006 - 09:48 #4
Hvor kommer glVar fra?
Avatar billede dallan2007 Nybegynder
10. maj 2006 - 09:50 #5
Jo my bad. Det skriver den stadigvæk.
Avatar billede Slettet bruger
10. maj 2006 - 09:52 #6
Det lyder som om du prøver at tilgå et objekt som en simpel streng. Det duer ikke...

glVar.style.cssText = 'background-color: #BEBEBE;';
og
document.getElementById(glVar).innerHTML='En tekst fra ...';

giver ikke nogen mening eftersom det øverste kræver et objekt og det nederste en streng.
Avatar billede dallan2007 Nybegynder
10. maj 2006 - 09:52 #7
Den start på en onmouseover="cellshift(this,1,bilerdiv);" fra en celle i en tabel.

Cellshift kalder så function cellshift(cell,value,glVar)
Avatar billede dallan2007 Nybegynder
10. maj 2006 - 09:54 #8
Ah ok. Hvordan konvetere jeg det til en streng? Eller der det et dumt spørgsmål?
Avatar billede Slettet bruger
10. maj 2006 - 09:59 #9
Kom med noget mere kode :)

Hvis du vil sende den aktuelle celles id med i cellshift kan du gøre det med this.id

onmouseover="cellshift(this,1,this.id);"

så kan du i din funktion bruge det sådan her:

function cellshift (what,val,where) {
what.style.cssText = 'background-color: #BEBEBE;';
document.getElementById(where).innerHTML='En tekst fra ...';
}
Avatar billede dallan2007 Nybegynder
10. maj 2006 - 10:03 #10
Desværre er det ikke med den aktive cells id. Jeg bliver måske nød til at gå den lange vej omkring dette.
Avatar billede barklund Nybegynder
10. maj 2006 - 10:06 #11
Er det ikke bare:

glVar.style.cssText = 'background-color: #BEBEBE;';
glVar.innerHTML='En tekst fra ...';

?

Det virker lidt sådan ud fra ovenstående beskrivelser...

--
Morten Barklund
Avatar billede Slettet bruger
10. maj 2006 - 10:06 #12
Tjae, ellers kan du "hardcode" det:

onmouseover="cellshift(this,1,'bilerdiv');"
Avatar billede dallan2007 Nybegynder
10. maj 2006 - 10:13 #13
barklund - bingo.
Avatar billede dallan2007 Nybegynder
10. maj 2006 - 10:13 #14
Smider i ikke begge lige et svar :)
Avatar billede Slettet bruger
10. maj 2006 - 10:17 #15
Ellers tak
Avatar billede barklund Nybegynder
10. maj 2006 - 10:34 #16
Jeg kan da godt kaste lidt om mig med noget...
Avatar billede dallan2007 Nybegynder
10. maj 2006 - 10:51 #17
Jamen så går det til barklund - takker.
Avatar billede barklund Nybegynder
10. maj 2006 - 11:00 #18
Og tark for points :)
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Vi tilbyder markedets bedste kurser inden for webudvikling

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester