<HTML>
<HEAD>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-2">
<SCRIPT LANGUAGE = JavaScript>
<!-- Ukrycie przed przeglądarkami nieobsługującymi JavaScript
function przetwarzaj_dane (){
var brakuje_danych = false;
var formularz = document.forms[0];
var napis = "";
if (formularz.imie.value == ""){
napis += "imie\n"
brakuje_danych = true;
}
if (formularz.nazwisko.value == ""){
napis += "nazwisko\n"
brakuje_danych = true;
}
if (formularz.kraj.value == ""){
napis += "kraj\n"
brakuje_danych = true;
}
if (formularz.tel.value == ""){
napis += "telefon\n"
brakuje_danych = true;
}
if (!brakuje_danych)
formularz.submit();
else
alert ("Nie wypełniłeś następujących pól:\n" + napis);
}
// Koniec kodu JavaScript -->
</SCRIPT>
</HEAD>
<BODY>
<H2>
<FORM NAME = "formularz1">
Proszę podać swoje dane:
<FONT SIZE = "-1"><I><BR>
(Pola oznaczone * muszą zostać wypełnione)
</FONT></I><BR><BR>
<TABLE>
<TR><TD><B>
Dane personalne:</B>
</TD><TD></TD></TR>
<TR><TD>
imię:</TD><TD>
<input type = "text" name = "imie">*</TD></TR>
<TR><TD>
nazwisko:</TD><TD>
<input type = "text" name = "nazwisko">*</TD></TR>
<TR><TD><B>
Adres:</B></TD><TD>
</TD>
<TR><TD>
ulica:</TD><TD>
<input type = "text" name = "ulica"></TD></TR>
<TR><TD>
nr domu:</TD><TD>
<input type = "text" name = "nrdomu"></TD></>TR
<TR><TD>
kod:</TD><TD>
<input type = "text" name = "kod"></TD></TR>
<TR><TD>
miasto:</TD><TD>
<input type = "text" name = "miasto"></TD></TR>
<TR><TD>
kraj:</TD><TD>
<input type = "text" name = "kraj">*</TD></TR>
<TR><TD>
tel.:</TD><TD>
<input type = "text" name = "tel">*</TD></TR>
<TR><TD>
</TD><TD ALIGN = "right">
</H2>
<input type = "button" name = "wyslij" value = " Wyślij! " onClick = "przetwarzaj_dane()"> </TD></TR>
</TABLE>
</BODY>
</HTML>
Na samym dole nie umieszczamy przycisku typu submit, jak w klasycznym formularzu, tylko zwyczajny przycisk typu button. Dodajemy natomiast do niego procedurę obsługi zdarzenia onClick o nazwie przetwarzaj_dane(). Procedura ta sprawdza po kolei wartości interesujących nas pól i jeżeli dane pole nie zostało wypełnione, dodaje do zmiennej napis nazwę tego pola oraz nadaje zmiennej brak_danych wartość true (prawda). Na samym końcu sprawdzamy wartość tej zmiennej. Jeżeli jest ona równa true, czyli brakuje jakichś danych, za pomocą metody alert() informujemy o tym użytkownika. Konkretnie wyświetlamy nazwy niewypełnionych pól oraz kończymy wykonywanie procedury. Jeżeli wartość zmiennej brak_danych nie została zmodyfikowana, wywołujemy metodę submit(). Powoduje ona przesłanie danych do serwera. Przypisanie formularz = document.forms[0] ma na celu jedynie uproszczenie zapisu.