Formulier valideren

Status
Niet open voor verdere reacties.

micheljeweetwel

Gebruiker
Lid geworden
19 mrt 2003
Berichten
65
hallo,

ik heb een formulier gemaakt in javascript. in dit formulier staan een aantel velden waar een nummer , voornaam, achternaam, plaats, straat, huisnummer, e-mail adres, postcode, leeftijd ingevoerd moet worden. de functionaliteiten die deze velden moeten hebben zijn:


· nummer moet beginnen met een s, gevolgd door 6 cijfers
· Voornaam, achternaam, straat en plaats moeten beginnen met een hoofdletter
· De Postcode dient te bestaan uit 4 cijfers, 1 spatie en 2 hoofdletters
· Het Huisnummer dient te beginnen met een cijfer, hierna zijn er letters mogelijk. (voor
bijv. huisnummers als “43c”)
· Het E-mailadres hoeft niet ingevuld te zijn, maar als het ingevuld is dient het een
relevant e-mailadres te zijn (dus met minimaal een @-teken en een .-teken en wat
letters)
· Studenten moeten jonger zijn dan 100 en ouder dan 16.

als iemand mij hiermee kan helpen zou ik dit zee op prijs stellen. het e-mail adres kan ik al wel valideren door een melding te geven als er geen @ of een . in voorkomt.

michel,
 
volgens mij is dit niet een "doe me huiswerk forum"?

heb je zelf al wat?
 
Geplaatst door wi3bren
volgens mij is dit niet een "doe me huiswerk forum"?

heb je zelf al wat?

Tja bij zo'n uitgebreide vraag weet je dat niet. En zelf uitzoeken leer je meer van. Ik heb dergelijke dingen wel liggen....
 
ik ben een inschrijfsysteem aan het maken voor een collega van mij. dit is puur zelf ontplooiing. ik vraag niet of jullie alle antwoorden voor me hebben. maar als je me een eindje op weg kan helpen dan stel ik dat zeer op prijs,


michel
 
Dit moet je wel kunnen helpen:

Code:
<html>
<head>
<script language="Javascript">
<!-- Copyright 2004 by Hackerfrans

function cont_form(formObj)
{
	geldig = true;
	if (geldig == true)
	{
		geldig = cont_nr(formObj.nummer.value); 
	}
	if (geldig == true)
	{
		geldig = cont_hl(formObj.voornaam.value, "voornaam");
	}
	if (geldig == true)
	{
		geldig = cont_hl(formObj.achternaam.value, "achternaam");
	}
	if (geldig == true)
	{
		geldig = cont_hl(formObj.straat.value, "straat");
	}
	if (geldig == true)
	{
		geldig = cont_hnr(formObj.huisnr.value, "straat");
	}
	if (geldig == true)
	{
		geldig = cont_pc(formObj.postcode.value);
	}
	if (geldig == true)
	{
		geldig = cont_hl(formObj.plaats.value, "plaats");
	}	
	if (geldig == true)
	{
		geldig = cont_eml(formObj.email.value, "plaats");
	}
	if (geldig == true)
	{
		geldig = cont_lft(formObj.leeftijd.value, "plaats");
	}
	if (geldig == true)
	{
		formObj.submit();
	}	
}

function cont_pc(postcode)
{
	if (postcode.length == 0)
	{
		alert("Geen postcode ingevoerd");
		return false;
	}
	var reg = new RegExp(/([0-9]){4}\s{1}([A-Z]){2}/)
	if (reg.exec(postcode) == null)
	{
		alert("postcode heeft niet het formaat '1234 AA'");
		return false;
	}
	return true;
}

function cont_nr(nummer)
{
	if (nummer.length == 0)
	{
		alert("Geen nummer ingevoerd");
		return false;
	}
	var reg = new RegExp(/s{1}([0-9]){6}/)
	if (reg.exec(nummer) == null)
	{
		alert("nummer heeft niet het formaat 'sXXXXXX'");
		return false;
	}
	return true;
}

function cont_hl(tekst, type)
{
	if (tekst.length == 0)
	{
		alert("Geen " + type + " ingevoerd");
		return false;
	}
	var reg = new RegExp(/^([A-Z]){1}/)
	if (reg.exec(tekst) == null)
	{
		alert(type + " begint niet met een hoofdletter");
		return false;
	}
	return true;
}

function cont_hnr(hnummer)
{
	if (hnummer.length == 0)
	{
		alert("Geen huisnummer ingevoerd");
		return false;
	}
	var reg = new RegExp(/^([0-9]){1,}([A-Z]){0,3}/)
	if (reg.exec(hnummer) == null)
	{
		alert("Ongeldig");
		return false;
	}
	return true;
}

function cont_eml(email)
{
	if (email.length == 0)
	{
		alert("Geen e-mailadres ingevoerd");
		return false;
	}
	var reg = new RegExp(/^[a-zA-Z0-9._-]{2,}@[a-zA-Z0-9._-]+\.([a-zA-Z]{2,4})/)
	if (reg.exec(email) == null)
	{
		alert("Het e-mailadres heeft niet het formaat 'XXXXXX@XXX.XXX'");
		return false;
	}
	return true;
}

function cont_lft(leeftijd)
{
	if (leeftijd.length == 0)
	{
		alert("Geen leeftijd ingevoerd");
		return false;
	}
	var reg = new RegExp(/^([0-9]){2,3}/)
	if (reg.exec(leeftijd) == null || parseInt(leeftijd) <= 16 || parseInt(leeftijd) >=100)
	{
		alert("Ongeldige leeftijd ingevoerd");
		return false;
	}
	return true;
}

//-->
</script>
</head>
<body>
<form name="formulier" action="#">
Nummer: <input type="text" name="nummer" maxlength=7><br>
Voornaam: <input type="text" name="voornaam"><br>
Achternaam: <input type="text" name="achternaam"><br>
Straat: <input type="text" name="straat">Huisnummer: <input type="text" name="huisnr" maxlength=7><br>
Postcode: <input type="text" name="postcode" maxlength=7><br>
Plaats: <input type="text" name="plaats"><br>
E-mail: <input type="text" name="email"><br>
Leeftijd: <input type="text" name="leeftijd" maxlength=3><br>
<input type="button" value="verzend" onClick="cont_form(this.form);">
</form>
</body>
</html>
 
heel erg bedankt voor uw reactie. ik denk dat ik hiermee zeker wel uit ga komen .

mvg michel,
 
Status
Niet open voor verdere reacties.

Nieuwste berichten

Terug
Bovenaan Onderaan