19. marts 2004 - 20:38
Der er
14 kommentarer og 1 løsning
Simpel validering af value via regExpression
Hvorledes validerer jeg indholdet af value i et INPUT felt udfra en regular expression. Indholdet skal min. udgøre mindst een karakter. Tilladte tegn er følgende: a-z (altså ikke æ,ø,å) A-Z 0-9 - (bindestreg) _ (underscore) /David
Annonceindlæg tema
Offentlig digitalisering
Fra effektivisering til digital suverænitet. Hvordan skaber det offentlige en digital fremtid med AI, sikkerhed og kontrol i centrum?
19. marts 2004 - 20:45
#1
reg = /[\w\-]+/i; if(!document.FORMNAVN.FELTNAVN.value.match(reg)){ //forkert return false; }else{ //accepteret return true; }
19. marts 2004 - 20:47
#2
-- og hvis du vil være helt sikker på, at brugerens locale ikke kommer til at medtage tegn, du ikke kan acceptere (f.eks. æøå eller èüê) kan du: reg = /[a-z0-9_\-]+/i;
19. marts 2004 - 20:49
#3
kan man lave den expression så den også accepterer at feltet er blankt ?
19. marts 2004 - 20:49
#4
men hvis feltet indeholder tegn skal disse selvfølgelig overholde ovenstående spec !
19. marts 2004 - 20:55
#5
Så ændrer du bare + til * + betyder en eller flere * betyder ingen eller flere !-)
19. marts 2004 - 21:02
#6
hmmm - med denne reg = /[\w\-]*/i; accepterer den godt nok at feltet er tomt, men den accepterer f.eks. også tegnet æ ?!?
19. marts 2004 - 21:05
#7
Derfor min kommentar 20:47:20 !-)
19. marts 2004 - 21:08
#8
sorry - jeg havde pastet forkert ind. Jeg bruger faktisk denne: reg = /[a-z0-9_\-]*/i; men får alligevel lov til at indtaste "æ" ?!?
19. marts 2004 - 21:08
#9
function editPageSettings (frm) { varAlert = "" send = true reg = /[a-z0-9_\-]*/i; if (frm.pages_title.value == "") { varAlert = varAlert + "- Sidenavn\n"; send = false; } if(!frm.pages_url_pagename.value.match(reg)){ varAlert = varAlert + "- URL sidenavn må ikke indeholde æ,ø,å eller mellemrum\n"; send = false; } if (send == false) { alert("Følgende felter skal udfyldes:\n\n" + varAlert); return false; } else { return true; } }
19. marts 2004 - 21:09
#10
Hov, jeg havde da også glemt ^$ for at sige, at der kun måtte være de tegn: var reg = /^[a-z0-9_\-]*$/i
19. marts 2004 - 21:12
#11
-- og lidt andet optimering: var varAlert = "",send = true; var reg = /^[a-z0-9_\-]*$/i; if (frm.pages_title.value == "") { varAlert += "- Sidenavn\n"; send = false; } if(!frm.pages_url_pagename.value.match(reg)){ varAlert += "- URL sidenavn må ikke indeholde æ,ø,å eller mellemrum\n"; send = false; } if (!send) { alert("Følgende felter skal udfyldes:\n\n" + varAlert); return false; } else { return true; } }
19. marts 2004 - 21:16
#12
Tusind tak for hjælpen - jeg glæder mig til den dag jeg selv mestrer regular expressions :-) smider du et svar ?
19. marts 2004 - 21:18
#13
Velbekomme '-) -- og giv dig straks igang med det, for der er godt nok nogle ting, som bliver lettere at udføre, når de er en option !-)
19. marts 2004 - 21:19
#14
ja, jeg ved det - det er bare lige det med at finde tiden til det.... God weekend :-)
19. marts 2004 - 21:21
#15
I lige måde -- og tak for points ;~}
Vi tilbyder markedets bedste kurser inden for webudvikling