webForumDet fria alternativet

Behöver hjälp med Formulärkontroll

JavaScript

2 svar · 170 visningar · startad av Janspeed

Medlem sedan jan. 2001510 inlägg
Frågan#1

Gaagh jag blir tokig! Nu har jag suttit i en halvtimme och vänt och vridit på koden och försökt komma på vad som är fel? Jag får detta felmeddelande när jag klickar på Skicka-knappen:

Line: 57
Char: 4
Error: Object doesn't support this property or method

Line 57 är denna:
document.forms.myForm.submit();

<html>
<head>
<title>Web</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<script language="JavaScript">
<!--
function setStylesheet() 
{
var linkText;

if (navigator.appName.indexOf('Netscape') != -1)
{
linkText = "<LINK REL='stylesheet' TYPE='text/css' HREF='/css/ns.css'>";
document.write(linkText);
}
else
{
linkText = "<LINK REL='stylesheet' TYPE='text/css' HREF='/css/ie.css'>";
document.write(linkText);
}
}

setStylesheet();
//-->
</script>
</head>
<script language="javascript">
<!--

function formValidate()
{
with (document.forms.myForm)
{

// kolla adress fälten
if (namn.value.length != 0) {} else { errors += 1; errormsg += "Namn. \n"; }
if (adress.value.length != 0) {} else { errors += 1; errormsg += "Adress. \n"; }
if (postnummer.value.length != 0) {} else { errors += 1; errormsg += "Postnummer. \n"; }
if (ort.value.length != 0) {} else { errors += 1; errormsg += "Ort. \n"; }
if (telefonnummer.value.length != 0) {} else { errors += 1; errormsg += "Telefonnummer. \n"; }
if (epost.value.length != 0 && epost.value.indexOf("@") != -1 && epost.value.indexOf(".") != -1) {} else { errors += 1; errormsg += "E-postadress. \n"; }
}
}

function formSubmit() 
{ 
// skicka iväg beställnigen
errors = 0;
errormsg = "";
//formValidate();

if (errors == 0) 
{
document.forms.myForm.submit();
} 
else
{
alert("Följande uppgifter är felaktigt ifyllda:\n-------------------------------------------------------\n" + errormsg);
} 
}

//-->
</script>
<body>
<br>
<table border="0" cellspacing="2" cellpadding="2" width="450" vspace="0" hspace="0" align="center">
<form name="myForm" method="post" action="lagra.asp">
<tr>
<td valign="top">
<table>
<tr>
<td colspan="2"><b>Namn:</b><br><input type="text" name="namn" size="30"></td>
</tr>
<tr>
<td colspan="2"><b>Adress:</b><br><input type="text" name="adress" size="30"></td>
</tr>
<tr>
<td><b>Postnr:</b><br><input type="text" name="postnummer" size="5" maxlength="6"></td><td><b>Ort:</b><br><input type="text" name="ort" size="20"></td>
</tr>
<tr>
<td colspan="2"><b>Telefon:</b><br><input type="text" name="telefonnummer" size="30"></td>
</tr>
<tr>
<td colspan="2"><b>E-post:</b><br><input type="text" name="epost" size="30"></td>
</tr>
<tr>
<td><input type="button" name="submit" value="Skicka" onclick="formSubmit()"></td>
</tr>
</table></td>
<td align="left"></td>
</tr>
</form>
</table>
<br>
</body>
</html>

Denna kod är i princip snodd rakt av från ett tidigare script jag gjort som funkar alldeles utmärkt så jag tycker det bara borde vara någon liten skitdetalj som jag missat. Är det någon som kan se vad som är problemet?

Är mycket tacksam för hjälp.

//JANspeed

Medlem sedan nov. 200013 890 inlägg
#2

Du har kommenterat bort raden:
formValidate();
;)

Medlem sedan jan. 2001510 inlägg
#3

Mmm... Jag vet, avsiktligt.

Jag upptäckte felet dock. Felet berodde på att jag givit knappen jag använder för att skicka formuläret attributet name="submit". När jag väl tagit bort det attributet helt så fungerade allt som det skulle. :l

Tack för hjälpen ändå. :)

/JANspeed

254 ms totalt · 4 externa anrop · v20260731065814-full.a51de22e
125 ms — deklarationer (db)
0 ms — hämta statistik (cache)
126 ms — hämta tråd, inlägg och bilagor (db)
120 ms — ändringar (db)