Avatar billede hundevennen Nybegynder
08. oktober 2007 - 13:13 Der er 8 kommentarer og
1 løsning

Validering af input

jeg har to input felter med hhv. udrejse og hjemrejse dato og vil gerne validere dem, så hjemrejsedatoen altid er efter udrejsen
Mit input er sådan ud:
<input type='text' name='uddato' size=20>
<input type='text' name='hjemdato' size=20>
Avatar billede olebole Juniormester
08. oktober 2007 - 13:33 #1
<ole>

Det er jo ikke godt at vide, hvordan det skal gøres. En dato kan skrives på _rigtig_ mange måder  :)

/mvh
</bole>
Avatar billede hundevennen Nybegynder
08. oktober 2007 - 13:36 #2
OK jeg har et lille js script der kommer frem med en kalender, hvor man så kan vælge
dato i formatet dd-mm-yyyy
Avatar billede hundevennen Nybegynder
08. oktober 2007 - 14:23 #3
faktisk vil jeg gerne validere flere felter, så de bare ikke er tomme, - altså f.eks navn og email og telefon nummer skal indtastes???
Avatar billede roenving Novice
10. oktober 2007 - 16:11 #4
En hurtig inspirations-skitse:

<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
    "http://www.w3.org/TR/html4/loose.dtd">
<html>

<head>

<title>Check formular og start- og udløbsdato</title>
<meta name="keywords" content="søgeord adskilt af komma">
<style type="text/css">
html,body{height:100%;margin:0px;border:0px;padding:0px;font-family:tahoma,verdana,arial,sans-serif;font-size:small;}
</style>
<script language="javascript" type="text/javascript">
function valider(f){
  var fjl = null, txt="", start, slut;
  if(f.titel.value == "" || f.titel.value == f.titel.defaultValue){
    txt += "\t- Eventen skal have en titel.\n";
    if(!fjl)
      fjl = f.titel;
  }
  if(!f.startDag.value.match(/^\d\d?-\d\d?-\d{4}$/)){
    txt += "\t- Startdato skal angives i formatet dd-mm-yyyy.\n";
    if(!fjl)
      fjl = f.startDag;
  }
  if(!f.slutDag.value.match(/^\d\d?-\d\d?-\d{4}$/)){
    txt += "\t- Slutdato skal angives i formatet dd-mm-yyyy.\n";
    if(!fjl)
      fjl = f.slutDag;
  }
  start = f.startDag.value.split("-");
  start = new Date(start[2],start[1]-1,start[0]);
  slut = f.slutDag.value.split("-");
  slut = new Date(slut[2],slut[1]-1,slut[0]);
  if(start > slut){
    txt += "\t- Startdato skal være før slutdato.\n";
    if(!fjl)
      fjl = f.startDag;
  }
  if(f.minSelect.selectedIndex < 1){
    txt += "\t- Du skal angive et antal.\n";
    if(!fjl)
      fjl = f.minSelect;
  }
  if(f.mitTextarea.value == ""){
    txt += "\t- Du skal angive en beskrivelse.\n";
    if(!fjl)
      fjl = f.mitTextarea;
  }
  if(!fjl)
    return true;
  else{
    alert("Der blev fundet følgende fejl i formularen:\n\n" + txt + "\nRet fejlene og forsøg at sende igen !-)");
    fjl.focus();
    return false;
  }
  return true;
}
</script>
</head>
<body>
<form id="minForm" action="dinside.html" name="minForm" onsubmit="return valider(this)">
Titel: <input id="titel" name="titel" type="text" value="Titel" onfocus="if(this.value==this.defaultValue)this.value='';" onblur="if(this.value=='')this.value=this.defaultValue;" size="20">
<br>Startdato: <input id="startDag" name="startDag" type="text" value="Startdato" onfocus="if(this.value==this.defaultValue)this.value='';" onblur="if(this.value=='')this.value=this.defaultValue;" size="20">
<br>Slutdato: <input id="slutDag" name="slutDag" type="text" value="Udløbsdato" onfocus="if(this.value==this.defaultValue)this.value='';" onblur="if(this.value=='')this.value=this.defaultValue;" size="20">
<br>
Antal:<br>
<select name="minSelect" id="minSelect" onchange="">
    <option value="">-- Vælg her --<br>
    <option value="1">1<br>
    <option value="2">2<br>
    <option value="3">3<br>
</select>
<br>
Beskrivelse:
<br>
<textarea name="mitTextarea" id="mitTextarea" cols="40" rows="5"></textarea>
<br>
<br><input type="submit" value="Send">
</form>

</body>

</html>
Avatar billede hundevennen Nybegynder
10. oktober 2007 - 18:15 #5
Roenving - tak skal du ha - jeg vil se om jeg kan lege lidt med det og tilpasse det til min form
Avatar billede roenving Novice
14. oktober 2007 - 01:30 #6
Velbekomme '-)
Avatar billede hundevennen Nybegynder
14. oktober 2007 - 09:36 #7
Roenving - jeg har lavet der hvor du validere titel bare ændret titel til email, da det er et af navnene i min form - nur er det sådan at min side er en asp - der er en select der henter fra en database.Jeg har placeret en hel kopi af dit valideringsscript i toppen af siden og kun ændret titel til navn og i min form har jeg kopieret det der står i form tag og den første ID der hedder titel og selvfølgelig ændret til email - - men når jeg submitter sker der ingenting - jeg har også ændret lidt på citationstegn og dobbelt citationstegn p.g.a. asp
Avatar billede hundevennen Nybegynder
14. oktober 2007 - 09:46 #8
jeg har fået det til at virke med mine tilretninger, så igen tak, det var mine citationstegn der ikke var sat rigtigt
Avatar billede roenving Novice
15. oktober 2007 - 01:44 #9
-- og jeg takker for point ;~}
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