validerings problemer
JEg har forsøgt at lave en formvalidering ved en onblur funktion. Den første funktion, name, virker fint, men resten virker ikke, og jeg har stirret mig blind på scriptet nu.Hvad har jeg lavet af fejl? (læg mærke til at jeg ikke regner med at det er i ental....)
Mange tak
function navn() {
w1 = document.minform.fornavn.value;
if (w1.length < 2) {
alert("Det kan da ikke passe at du ikke hedder noget til efternavn...");
document.minform.fornavn.focus();
}
for (t=1; t<w1.length; t++) {
w2 = w1.charAt(t);
if (!(w2 >= "a" && w2 <= "z") || w2=="æ" || w2=="ø" || w2=="å") {
alert("Medmindre du hedder R2D2, så skulle du nok fjerne de tegn der ikke er bogstaver.")
document.minform.fornavn.focus();
}
}
}
function email() {
e1 = document.minform.email.value;
if (e1.length < 6) {
alert("Der er for få tegn i din emailadresse!");
document.minform.email.focus();
}
e2=e1.split("@");
if (!(e2.length == 2 && e2[0].length > 0 && e2[1].length > 0)) {
alert ("E-mail @-fejl!");
document.minform.email.focus();
}
e3 = e2[1].split(".");
e3l = e3.length;
if (e3l < 2) {
alert ("E-mail mangler et punktum!");
document.minform.email.focus();
}
for (t=0; t<e3l; t++){
if (e3[t].length == 0){
alert ("E-mail mangler domæaneangivelse");
document.minform.email.focus();
}
if (t == (e3l-1)) {
if (e3[t].length < 2){
alert ("E-mail topdomæne for kort (eks: .dk)");
document.minform.email.focus();
}
}
}
}
function telefon() {
t1 = document.minform.telefon.value;
if (t1.length < 8) {
alert("For få tal i nummeret. Skriv venligst 8 tal.");
document.minform.telefon.focus();
}
for (t=0; t<t1.length; t++) {
t2 = t1.charAt(t);
if (!(t2 >= "0" && t2 <= "9")) {
alert("TLF nummeret indeholder ulovligt tegn! Brug venligst kun tal.");
document.minform.telefon.focus();
}
}
}
function dag() {
d1 = document.minform.dag.value;
dd1 = d1 - 0;
if (dd1 > 31 || dd1 <= 0) {
alert("Datoen bedes venligst holdt indenfor 1 til 31. Tak!");
document.minform.dag.focus();
}
}
function maaned() {
m1 = document.minform.maaned.value;
mm1 = m1 - 0;
if (mm1 > 12 || mm1 <= 0) {
alert("Måneden bedes venligst holdt indenfor 1 til 12. Tak!");
document.minform.maaned.focus();
}
}
function aar() {
a1 = document.minform.aar.value;
aa1 = a1 - 0;
if (aa1 > 2050 || aa1 <= 1900) {
alert("Året bedes venligst holdt indenfor 1900 og 2050. Tak!");
document.minform.aar.focus();
}
}
de bliver kaldt ved følgende linjer på siden
<input type="text" maxlength=32" size="16" Name="fornavn" OnBlur="navn()">
<input type="text" maxlength=32" size="16" Name="email" OnBlur="email()">
og så videre.. Jeg har allerede dobbelttjekket navnene på funktionerne og det der bliver kaldt, fejlen ligger ikke der.
