09. juni 2004 - 21:36Der er
12 kommentarer og 1 løsning
Åbn javaskript-vindue ved klik på textbox
Hvor dan åbner jeg et javaskriptvindue ved klik på en tekstbox? Som min kode ser ud nu skal man klikke på en ikon, men jeg vil også have mulighed for at åbne ved klik på tekstboxen.
generelt er din første løsning den bedste compac på nær nogle skønhedsfejl som surfer har rettet :o)
folk vil blive synderligt irreterede over at der bliver åbnet en kalender når de smutter ind i et tekstfelt, som de ikke selv har bedt om :o), desuden vil mange popupdræbere blokke den - ikke godt for din sides ry !
Ja, det er et dilemma. Jeg kunne godt tænke mig at man fik mulighed for at "klikke" datoen ind via en lille kalender eller også skrive den via tastaturet. Er der nogen der har et forslag?
Ja, det må være måden. Men det var for at slippe for validering efter indtastning. Hvordan laver jeg det så man kan gøre det på beggge måder - med kontrol af syntaxen.
Jeg vil udvide spørgsmålet til: Hvordan kontrollerer jeg at datoen ikke er ældre end dags dato? Dato formatet der kommer fra *.js - filen ser således ud dd/mm/yyyy.
<script type="text/javascript"> function checkDate(fld){ var d = fld.value; d = d.replace(/[\.\/ \-]+/g,"/"); if(!d.match(/^\d{2}\/\d{2}\/\d{4}$/)){ alert('Fejl i datoen'); fld.focus(); return false; } d = d.split("/"); var dat = new Date(+d[2],(+d[1]-1),+d[0],23,59,59); var today = new Date(); if(dat.getFullYear() != +d[2] || dat.getMonth()+1 != +d[1] || dat.getDate() != +d[0] || today.getTime() > dat.getTime()){ alert('Fejl i datoen'); fld.focus(); return false; } fld.value = d.join("/"); } </script>
-- man kunne også indsætte noget, som testede for gyldige datoer i andet format, f.eks. 12/12/04 eller sådan noget og konverterede dem ...
Kontrollen af den manuelle indtastning virker ikke. Har jeg har "kaldet" til *.js-filen liggende forkert? Det ligger i: <Head> <script language="JavaScript" src="date-picker.js"> </script> </head>
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.