Avatar billede lip Nybegynder
30. januar 2001 - 10:26 Der er 6 kommentarer og
1 løsning

validering på inputfelt

Jeg har 3 input tekst bokse,
1
2
3
Hvis man har udfyld nr 1, så skal man ikke udfylde nr 2 og 3.
Men hvis man ikke har udfyldt nr 1, så skal man enten udfylde både nr 1 og nr 2 eller bare en af dem.
Er der nogen der har nogle forslag!!
Avatar billede kee.... Nybegynder
30. januar 2001 - 10:32 #1
Der er mange måder at gøre det på. Du kan ganske enkelt lave en rulnedmenu. eller hvis det direkte er indtastningsfelter hvor de selv skriver noget i feltet, kan du instille felterne efter hinanden. Så de \"snakker\" sammen.
Avatar billede lip Nybegynder
30. januar 2001 - 12:02 #2
Kan jeg evt. få et eksemplel på den sidste mulighed som du nævner.

>lip
Avatar billede kee.... Nybegynder
30. januar 2001 - 12:57 #3
Jeps-->

<html>
<head>
<title>Dit tastefelt</title>
<SCRIPT LANGUAGE=JAVASCRIPT>
<!--
function afsendelse(form) {           
if (form.tastefelt1.value == \"\")
if (form.tastefelt2.value == \"\")
if (form.tastefelt3.value == \"\") {
alert(\"Du skal indtaste i mindst et felt\")
form.tastefelt1.focus()
return false
}

return true
}
       
// -->
</SCRIPT>
</head>

<body>
<FORM onSubmit=\"return afsendelse(this)\" ACTION=\"nogetHandling.cgi\" NAME=minFormular>
Dit tastefelt 1: <INPUT TYPE=\"text\" NAME=\"tastefelt1\" SIZE=\"10\"><br>
Dit tastefelt 2: <INPUT TYPE=\"text\" NAME=\"tastefelt2\" SIZE=\"10\"><br>
Dit tastefelt 3: <INPUT TYPE=\"text\" NAME=\"tastefelt3\" SIZE=\"10\"><br>
<br>
<INPUT TYPE=\"submit\" VALUE=\"Indsend\"> <INPUT TYPE=\"reset\" VALUE=\"Nulstil\">
</FORM>
</body>
</html>
Avatar billede lip Nybegynder
30. januar 2001 - 13:34 #4
Okay, men man må ikke kunne sende hvis alle tre er udfyldt.
Hvis nr 1 er udfyldt, så må de andre to ikke være udfyld.
og hvis nr 2 eller 3 er udfyldt på nr 1 ikke være udfyldt.
Gør jeg mig selv forståelig eller er det vulapuk.
>lip
Avatar billede r_brejnholt Nybegynder
30. januar 2001 - 20:04 #5
sådan noget i denne her retning...?
function afsendelse(form)
var ok=1;
t1=form.tastefelt1.value;
t2=form.tastefelt2.value;
t3=form.tastefelt3.value;
if (t1==\"\" && t2 ==\"\" && t3==\"\")
ok=0;
elseif (t1!=\"\" && t2!=\"\" && t3!=\"\")
ok=0;
elseif (t1!=\"\" && (t2!=\"\" || t3!=\"\")
ok=0;
if (ok) {
return true;
}
else {
alert(\"FEJL!\");
form.tastefelt1.focus();
return false;
}
}


Avatar billede lip Nybegynder
31. januar 2001 - 08:46 #6
r brejnholt,
jeg tror at du har fat i noget af det rigtige, men det virker ikke.
Og hvorfor benytter du pludselig || i stedet for &&
>lip
Avatar billede nixen Nybegynder
31. januar 2001 - 20:45 #7
hvad med
<form name=formNavn>
<input type=text name=felt1 onkeydown=fnValidate(this)>
osv.osv
</form>

<script>
var iArr = new Array(formNavn.felt1,formNavn.felt2,formNavn.felt4)
function fnValidate(obj){
for (var i in iArr) if (iArr[i]!=obj) iArr[i].value=\"\"
}

..bare en anden (måske bedre) mulighed..
</script>
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Vi tilbyder markedets bedste kurser inden for webudvikling

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester