Avatar billede tgl Nybegynder
02. april 2001 - 08:57 Der er 8 kommentarer og
1 løsning

Fejl : document.min3Formular.aartekAproj.value er ikke et objekt

Jeg har en form med et tekstfelt som har syntaksen :
....
<tr valign=\"top\"><form name\"min3Formular\">
<td width=\"200\"><font face=\"arial\" size=\"2\">Teknik A (projekt)</font></td>
<td width=\"90\"><font face=\"arial\" size=\"2\"><input type=\"text\" name=\"aartekAproj\" value=\"\" size=\"2\" maxlength=\"2\"></font></td></form></tr>
....

og følgende script :

<SCRIPT LANGUAGE=\"JavaScript\">
<!--
var temp = document.min3Formular.aartekAproj.value
if (temp == \"\") {
document.write(\"Ingen årskarakter i Teknik A\")
}
//-->
</script>

men får fejlen :

Fejl : document.min3Formular.aartekAproj.value er ikke et objekt


Hvorfor det?????

Avatar billede altinet Nybegynder
02. april 2001 - 09:01 #1
<form name\"min3Formular\">
mangler =

Skal være:
<form name=\"min3Formular\">

:-) Lars
Avatar billede tgl Nybegynder
02. april 2001 - 09:06 #2
Jeg har nu føjet = til, men får stadig samme fejl.

Andre forslag?
Avatar billede altinet Nybegynder
02. april 2001 - 09:16 #3
Prøv at sætte ; (semikolon) for enden af hver linie i scriptet:

var temp = document.min3Formular.aartekAproj.value;
if (temp == \"\") {
document.write(\"Ingen årskarakter i Teknik A\");

Hvis det ikke virker, så prøv at lægge det ind i en funktion, som du så kalder når valideringen skal køres.

<SCRIPT LANGUAGE=\"JavaScript\">
<!--
function checkKarakter(){
var temp = document.min3Formular.aartekAproj.value;
if (temp == \"\") {
document.write(\"Ingen årskarakter i Teknik A\") ;
}
}
//-->
</script>

<body onLoad=\"checkKarakter()\">

Problemet er måske, at formen ikke er \"dannet\" på det tidspunkt hvor browseren når til scriptet?

:-) Lars
Avatar billede jakoba Nybegynder
02. april 2001 - 11:09 #4
Der er et par langt ud muligheder:

1) er der noget andet på siden der har name=\'min3Formular\'
  så kan du istedet skrive
document.forms.min3Formular.aartekAproj.value
  så det understreges at det er formen du snakker om.
  men hvis
2) du har en anden <form kommando med  name=\'min3Formular\'
  bliver du nødt til at omdøbe een af dem. I den situation vil IE nogen gange acceptere:
document.min3Formular[0].aartekAproj.value  eller
document.min3Formular[1].aartekAproj.value
  men netscape vil slet ikke acceptere det.
Avatar billede tgl Nybegynder
02. april 2001 - 13:35 #5
Det fungere nu efter hensigten.
Avatar billede olebole Juniormester
02. april 2001 - 13:39 #6
<ole>
10 mod én på, altinet har ret i, at formen ikke er skrevet, før JavaScript begynder at validere den :)
/mvh
</bole>
Avatar billede altinet Nybegynder
02. april 2001 - 13:46 #7
Så var det problemet med hvornår Scriptet kaldes?
:-) Lars / Altinet
Avatar billede tgl Nybegynder
02. april 2001 - 13:56 #8
altinet : Tja jeg lavede en funktion som jeg så kalder i min form.
Avatar billede altinet Nybegynder
02. april 2001 - 14:02 #9
Jamen, sådan...!

Tak for points!

:-) Lars
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