Avatar billede cpccorp Juniormester
12. september 2004 - 14:03 Der er 11 kommentarer og
1 løsning

Validering af speciel data

Jeg har et tekst felt som skal valideres, hvor data skal stå således 5 - 0 og det der skal valideres i feltet er om der er det obligatoriske mellemrum " - ", desuden er der forskellige formularer på siden med de samme felter(samme feltnavn i alle formularer).
Avatar billede skovenborg Nybegynder
12. september 2004 - 14:13 #1
Du kan teste om feltet opfylder kravet på denne måde:
if (!document.form1.tekst1.value.match(/[0-9]+ - [0-9]+/i)) {alert("FEJL");}

Helt præcis hvordan du vil have det i denne situation er lidt uklar. Vil du teste alle felterne på én gang i flere forskellige formularer eller blot når man lige har udfyldt feltet?
Avatar billede cpccorp Juniormester
12. september 2004 - 14:39 #2
Kun en formular opdateres ad gangen, det eneste variable i ovenstående skulle så gerne være fomnavnet, hvorn gør man det
Avatar billede skovenborg Nybegynder
12. september 2004 - 14:44 #3
Den jeg har testet den på checker feltet når formularen submittes:
<script type="text/javascript">
  function validate(frm) {
      if (!frm.tekst1.value.match(/[0-9]+ - [0-9]+/i)) {alert("Fejl");return false;}
    else return true;
   
  }
</script>

<form onsubmit="return validate(this);">
<input type="text" name="tekst1" />
<input type="submit" />
</form>

Den kan dog også se sådan ud:
<form>
<input type="text" name="tekst1" />
<input type="button" value="Check" onclick="validate(this.form);" />
</form>

eller for den sags skyld på mange andre måder. Teknikken er blot at du skal kalde validate funktionen med formen som argument. Selve navnet kan du så stille oppe i selve funktionen.
Avatar billede cpccorp Juniormester
12. september 2004 - 14:47 #4
Tusind tak læg et svar
Avatar billede cpccorp Juniormester
12. september 2004 - 14:48 #5
ups gælder ovenstående også hvis tallene er 2-cifrede
Avatar billede skovenborg Nybegynder
12. september 2004 - 14:54 #6
det gælder med så mange cifre som du har lyst til - men du vil måske højest have at der skal være 2 cifre?
Avatar billede cpccorp Juniormester
12. september 2004 - 15:24 #7
nej men bare det kan klare flere cifre end 1 før og efter " - "
Avatar billede skovenborg Nybegynder
12. september 2004 - 15:37 #8
det skulle den gerne kunne - når der står [0-9]+ betyder det at det skal være et tal og det skal forekomme 1 eller flere gange.

Og nu tillader jeg mig lige at lægge det svar :-)
Avatar billede roenving Novice
12. september 2004 - 16:13 #9
>>skovenborg

Hvorfor bruger du ikke \d i stedet for [0-9] ?-)
Avatar billede skovenborg Nybegynder
12. september 2004 - 17:08 #10
det ved jeg ikke - havde fuldstændig glemt den. Ja, man er jo efterhånden lidt ude af træning ;-)
Avatar billede skovenborg Nybegynder
12. september 2004 - 19:04 #11
...men tak for points alligevel :-)
Avatar billede cpccorp Juniormester
12. september 2004 - 19:06 #12
Du får pointsene da det andet også virkede
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