Avatar billede peturkirke Novice
07. juli 2003 - 23:02 Der er 12 kommentarer og
1 løsning

'document.i1.time2' is null or not an object

Jeg har et meget kedeligt problem, og det er, at når min webside loader, så får jeg ovennævnte javascript-fejl.
Sandsynligvis ser siden ud til at virke som den skal, men fejlen er kedelig og skal selvfølgelig ikke være der.
Hvem kan hjælpe ?

Jeg lægger den vigtige del af koden nedenfor:
Avatar billede peturkirke Novice
07. juli 2003 - 23:04 #1
Først har jeg noget javascript (efter head):

------------------------------------------------------------------

<SCRIPT language="JavaScript">

function start()
{

setup(document.i1.time2.value,'i1');

repeat()
}

start();

function repeat()
{

    down('i1');
   
setTimeout("repeat()",1000);
}


function setup(day,box)
{
today = (new Date()).getTime();
the_day = (new Date(day)).getTime();
time = (the_day - today);
document.forms[box].time2.value=time;
}

function down(box)
{
document.forms[box].time2.value = document.forms[box].time2.value - 1000;
time = document.forms[box].time2.value;
days = (time - (time % 86400000)) / 86400000;
time = time - (days * 86400000);
hours = (time - (time % 3600000)) / 3600000;
time = time - (hours * 3600000);
mins = (time - (time % 60000)) / 60000;
time = time - (mins * 60000);
secs = (time - (time % 1000)) / 1000;
if(days==1) out = "1 dagur ";
else out = days+" dagar, ";
if(hours < 10) out = out+"0";
out = out+hours+":";
if(mins < 10) out = out+"0";
out = out+mins+":";
if(secs < 10) out = out+"0";
out = out+secs;
if(days+hours+mins+secs> 1) document.forms[box].time.value = out;
else document.forms[box].time.value = ("feilur");
}
// I'm back! -->

</SCRIPT>

-----------------------------------------------------------------------

Så er der body onload:

----------------------------------------------------------------------

<body onload="start();">

-----------------------------------------------------------------------

og til sidst formularfelterne:

-----------------------------------------------------------------------

<FORM name="i1">Tíð eftir
<input type="text" name="time" size="13" value=" " style="font-family: Arial; font-size: 10 pt; background-color: #E8E8E8; border: 0">
<input type="hidden" name="time2" size="0" value="Jul 27, 2003 21:00:00">
Avatar billede thewho Nybegynder
07. juli 2003 - 23:04 #2
Jeg mener bestemt ikke at det er muligt at bruge tal når du bestemmer variabler i javascripts...
Avatar billede peturkirke Novice
07. juli 2003 - 23:08 #3
hvordan mener du ?
Avatar billede roenving Novice
07. juli 2003 - 23:12 #4
Tal er fuldt lovlige i variabelnavne i javascript -- bare de ikke er første tegn ...

Men hvis du nu fjernede kaldet til start i javascript-koden og kun havde den i onload vil jeg gætte på, at time2 er initialiseret ,-)
Avatar billede =maddog= Nybegynder
07. juli 2003 - 23:16 #5
function start()
{

setup(document.i1.time2.value,'i1');

repeat()
}
/*
DEN HER SKAL VÆK!!!!
start();
*/
function repeat()
{

    down('i1');
   
setTimeout("repeat()",1000);
}
Avatar billede peturkirke Novice
07. juli 2003 - 23:22 #6
jeg vil gerne give en MEGET STOR tak til roenving og =maddog= for svaret. Det hjalp. Det bliver roenving som får poengene, fordi han var først.
Jeg har haft dette spørgsmål 2 gange før i eksperten, og da var der ingen, der klarede at løse problemet.
Så mange tak.
ups ... men roenving, du bliver nødt til at skrive igen. får ikke givet poeng nu
Avatar billede roenving Novice
07. juli 2003 - 23:24 #7
Velbekomme '-)
Avatar billede =maddog= Nybegynder
07. juli 2003 - 23:27 #8
klassisk kain/abel syndrom. head og body loades asynkront og man kan ikke være sikker på et element i den ene er klar før den anden - derfor bruger man onload.
jeg havde ærligt talt ikke set roenving allerede havde pointeret problemet, så jeg undskylder min redundante kommentar.
Avatar billede peturkirke Novice
07. juli 2003 - 23:28 #9
maddog, du skal også have megen tak, men det er så det eneste jeg kan tilbyde dig i denne omgang, desværre
Avatar billede roenving Novice
07. juli 2003 - 23:29 #10
-- den var jo nøjagtigt præciserende ...
Avatar billede roenving Novice
07. juli 2003 - 23:30 #11
-- og tak for point ;~}
Avatar billede =maddog= Nybegynder
07. juli 2003 - 23:31 #12
ingen problemer. jeg er her ikke for point - kun anderkendelse (jeg er da i det mindste ærlig).
Avatar billede roenving Novice
07. juli 2003 - 23:42 #13
*gg*

-- lidt sjovt, hvis du nu havde ramt et u i stedet for a, da du skrev anerkendelse ,o]
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