Avatar billede kartolux Nybegynder
16. november 2001 - 08:43 Der er 9 kommentarer og
1 løsning

Validering

Hvordan laver jeg et lille check på indholdet af, hvad folk skriver i et formularfelt?

I feltet KuponFeltValue1 må brugeren kun skrive stort eller lille x

Hvis de skriver noget andet, skal der poppe en alert med \"Anvend venligst kun kryds i linje 1\"
Avatar billede juggalo Nybegynder
16. november 2001 - 09:00 #1
Et forslag: Hvis folk alligevel bare skal \"krydse af\" i din formular, hvorfor så ikke bare bruge et checkbox felt som jo er lavet netop til dette formål.

<input type=\"checkbox\" name=\"kuponfeltvalue1\">
Avatar billede kartolux Nybegynder
16. november 2001 - 09:03 #2
Okay, men feltet kan i andre situationer indeholde tal alt efter nogle andre kriterier, så valideringen skal ske via en include fil. Nogle gange skal den bruges, andre gange ikke.
Avatar billede juggalo Nybegynder
16. november 2001 - 09:09 #3
I en funktion:

st=document.form.kuponfeltvalue1.value
  if (st!=\"X\")&&(st!=\"x\") {
    alert(\"Anvend venligst kun kryds i linje 1\")
    return false
  }
Avatar billede kartolux Nybegynder
16. november 2001 - 09:14 #4
Skal det se sådan ud - når færdigt?


<SCRIPT language=Javascript>
<!--

st=document.form.kuponfeltvalue1.value
  if (st!=\"X\")&&(st!=\"x\") {
    alert(\"Anvend venligst kun kryds i linje 1\")
    return false
  }

//-->
</SCRIPT>

Avatar billede juggalo Nybegynder
16. november 2001 - 09:20 #5
<script language=Javascript>
function checkformular()
{
  var st=document.form.kuponfeltvalue1.value
  if (st!=\"X\")&&(st!=\"x\") {
    alert(\"Anvend venligst kun kryds i linje 1\")
    return false
  }
}
</script>

og så nede i formularen:

<form name=formnavn method=POST action=filnavn onsubmit=\'return checkformular()\'>
Avatar billede Slettet bruger
16. november 2001 - 18:17 #6
Sådan bruger man ikke if-sætninger! Desuden er det nemmere at klare det med RegExp:

<script>
function valider(frm) {
if (frm.KuponFeltValue1.value.match(/^[x]$/i) {
alert(\"Anvendt venligst kun kryds...\");
return false;
}
}
</script>

<form action=\"din_cgi.cgi\" onSubmit=\"return valider(this);\">
<input type=\"text\" maxlength=\"1\" name=\"KuponFeltValue1\"><br>
<input type=\"submit\" value=\"Indsend\">
</form>
Avatar billede Slettet bruger
16. november 2001 - 18:20 #7
Der var lige nogle fejl. Her er det færdige script:
<script>

function valider(frm) {
if (!frm.KuponFeltValue1.value.match(/[x]/i)) {
alert(\"Anvend venligst kun kryds...\");
return false;
}
return true;
}
</script>
Avatar billede kartolux Nybegynder
16. november 2001 - 23:03 #8
Kan man ikke lave det i ASP?
Avatar billede Slettet bruger
17. januar 2002 - 12:49 #9
Jo, men hvorfor i alverden vælger du så at stille dette spm under JavaScript?? Du har fået, hvad du har bedt om! Mere kan du da ikke forlange? Så lad vær med at afvise et korrekt svar! Det viser disrespekt, og giver mig ikke synderlig lyst til at hjælpe dig næste gang!
Avatar billede Slettet bruger
17. januar 2002 - 12:50 #10
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