Ne aggódjon a javascript formok érvényesítése
egy általános probléma. Itt egy egyszerű megoldást
talál!
Hogy érvényesítse a javascript formját amikor az adatok elküldésre kerülnek,
egy "onsubmit" eseményt kell hozzárendelnie a <form> taghoz:
Pl:
<form action="tarolas.php" method="post" onsubmit="return
checkform(this);">
Ha a mező, amit érvényesíteni szeretne, valami ilyesmi:
<input type="text" name="email" />
Akkor az érvényesítési rutin valami iyesmi lesz amit a HEAD szekcióba helyezen
el a dokumentumban:
<script language="JavaScript" type="text/javascript">
<!--
function checkform ( form )
{
if (form.email.value == "") {
alert( "Kérem adja meg az email címét" );
form.email.focus();
return false ;
}
return true ;
}
//-->
</script>
Természetesen az "emal" nevet ki kell cserélni, ha más INPUT tagot
szeretne érvényesíten, annak a nevére.
A funkció azt ellenőrzi, ha a mező nincs kitöltve, és meghívja az alert() funkciót
ami egy dialógus ablakot jelenít meg, kiírva "Kérem adja meg az emal címét"
majd meghívja az email.focus() funckiót, ami a kurzort az email ablakba helyezi.
A "return false" megakadályozza, hogya a form elküldésre kerüljön.
Mi történik, ha több mint egy mezőt szeretne érvényeséteni?
Akkor alkalmazhat több ellenőrzési pontot, pl:
<script language="JavaScript" type="text/javascript">
<!--
function checkform ( form )
{
if (form.email.value == "") {
alert( "Kérem adja meg az email címét" );
form.email.focus();
return false ;
}
if (form.name.value == "") {
alert( "Kérem adja meg a nevét" );
form.email.focus();
return false ;
}
// és így tovább...
return true ;
}
//-->
</script>
A HTML része a következőképpen nézhet ki?
<form action="tarolas.php" method="post" onsubmit="return
checkform(this);">
Kérem az email címet:<input type="text" name="email"
value=""><br>
Kérem az nevét:<input type="text" name="name" value=""><br>
<input type="submit" name="submit" value="Tárol">
</form>
Hát ennyi