Avatar billede proff Nybegynder
05. maj 2004 - 20:00 Der er 12 kommentarer

Fejl i GetElementById?

Hej. Jeg får fejl i denne linje:

parent.document.all.getElementById('onlinecount').innerHTML='<?=$antalOnline;?>';

Linje: 4
Tegn: 1
Fejl: Objektet understøtter ikke denne egenskab eller metode
Kode
Metode:0


Siden der skal hentes er en side der hedder chat.php, men fik at vide at jeg kunne gøre det med Document.All?
Avatar billede roenving Novice
05. maj 2004 - 20:09 #1
fjern .all !-)
Avatar billede proff Nybegynder
05. maj 2004 - 20:51 #2
Så står der: parent.document.getElementById('onlinecount').innerHTML='<?=$antalOnline;?>';


Men hvor angiver det så lige at ('onlinecount') kan findes i chat.php?
Avatar billede roenving Novice
05. maj 2004 - 21:07 #3
Jeg går ud fra at den viste kode afvikles i en (skjult) iframe, og i koden beder den om at finde elementet onlinecount i den omkransende side, så det er en automatisk henvisning til den, hvis filnavn jo så nok er 'chat.php'
Avatar billede proff Nybegynder
05. maj 2004 - 21:22 #4
Nej, nemlig ikke ;o)
Derfor jeg lige har brug for lidt hjælp..

Altså.

Denne side som denne kode kører på hedder load.php
Og så har jeg en side der hedder chat.php som viser det hele

chat.php er lavet med frames på denne måde:

<frameset rows="0%,100%" framespacing="0" border="0" frameborder="0">
  <frame src="action.php?action=frame">
  <frame src="chat.php?frame=true" scrolling="no">
</frameset>

Så det er ikke en skjult iframe ;o)
Hvordan skal jeg så angive at det er siden chat.php den ligger i??
Avatar billede proff Nybegynder
05. maj 2004 - 21:22 #5
Hovsa.. Det er ikke det rigtige frameset!

Dette er mit rigtige frameset:

frameset rows="0%,100%" framespacing="0" border="0" frameborder="0">
  <frame src="load.php?action=frame">
  <frame src="chat.php?frame=true" scrolling="no">
</frameset>
Avatar billede proff Nybegynder
05. maj 2004 - 21:23 #6
Kom lige til at tage noget fra ældre model ;o)
Avatar billede roenving Novice
05. maj 2004 - 21:25 #7
parent.frames[1].document.getElementById('onlinecount').innerHTML='<?=$antalOnline;?>';
Avatar billede proff Nybegynder
05. maj 2004 - 22:05 #8
Jeg undskylder jeg er så nysgerrig, men hvad står frames[1] for? Det er jo frame 2 som chat.php ligger i..? Og det er der "onlinecount" er..?
Avatar billede roenving Novice
05. maj 2004 - 22:09 #9
Fordi alle arrays i javascript er nul-baserede vil den anden frame have nummeret 1 !-)

-- og du kan anskue det på den måde, at når du åbner arrayet skal du nul skridt frem for at se det første element, og du skal kun et skridt frem for at se det andet element, så frames[0] henviser til load.php og frames[1] til chat.php !o]
Avatar billede proff Nybegynder
05. maj 2004 - 22:13 #10
Så får jeg en fejl-meddelelse igen:
parent.frames[1].document.getElementById('onlinecount').innerHTML='<?=$antalOnline;?>';

Tegn: 1
Fejl: 'parent.frames.1.document' er null eller ikke et objekt
Kode: 0
Avatar billede roenving Novice
05. maj 2004 - 22:39 #11
-- og du kalder i ovennævnte frameset fra load.php ?-)
Avatar billede roenving Novice
05. maj 2004 - 22:41 #12
-- men du kan i hvert fald prøve at sætte et name på dine frames:

<frameset rows="0%,100%" framespacing="0" border="0" frameborder="0">
  <frame src="load.php?action=frame" name="load">
  <frame src="chat.php?frame=true" scrolling="no" name="chat">
</frameset>

og så bruge navnet i kaldet:

parent.chat.document.getElementById('onlinecount').innerHTML='<?=$antalOnline;?>';
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