03. december 2008 - 17:03Der er
5 kommentarer og 1 løsning
Flere functions i én?
Hello.
Jeg har flere former for validering på en form. Der ligger flere functions i mit javascript der validerer de forskellige felter, afhængigt af indhold.
Et eksempel kunne være: // Validér email function validateMail(f) { var inputNavn = f.inputNavn; var emailreg=/^.+@.+\..{2,4}$/
if (!inputNavn.value.match(emailreg)) { alert("Indtast en gyldig email adresse!") inputNavn.focus(); return false; } return true; } // Validér telefonnummer function validatePhone(f) { var s = f.inputNavn.value.replace(" ", ""); if (!/^[0-9\/-]{7,20}$/.test(s)) { alert("Telefonnummeret er ikke korrekt"); f.inputNavn.focus(); return false; } return true; }
På formen ligger 2 functions i en return når formen submittes.
Et eksempel: onsubmit="return validateMail(this) && validatePhone(this)">
Mit spørgsmål er så: Er det muligt bare at ligge det hele i én function eller noget lignende, så jeg er fri for at skulle skrive alle de validerings functions jeg bruger i onsubmit?
Jeg skal ærligt indrømme jeg ikke har det fjerneste forstand på javascripts og vil blot høre om det er muligt at gøre det hele lidt nemmere :-)
I dette særtema ser vi på, hvordan cloud og AI bliver fundamentet for virksomhedernes digitale forretning, og hvordan de nye muligheder for automatisering og forretningsværdi kan udnyttes uden at miste overblik, sikkerhed og menneskelig kontrol.
- og jeg ville nok samle de to funktioner. F.eks (forudsat dine felter hedder 'email' og 'phone'):
function validateMail(f) { var inputNavn = f.email; var emailreg=/^.+@.+\..{2,4}$/
if (!inputNavn.value.match(emailreg)) { alert("Indtast en gyldig email adresse!") inputNavn.focus(); return false; }
inputNavn = f.phone; var s = inputNavn.value.replace(" ", ""); if (!/^[0-9\/-]{7,20}$/.test(s)) { alert("Telefonnummeret er ikke korrekt"); f.inputNavn.focus(); return false; }
Nu er jeg ikke lige den stærkeste i javascripts, så kan du forklare hvad jeg skal gøre hvis jeg sammenlægge 8 functions i én? Jeg kan se hvad du gør i dit eksempel ovenfor, men jeg er mere interesseret i _hvordan_ og _hvorfor_ jeg skal gøre sådan :-)
Jeg ved ikke hvem der skal smide et svar.. Ligger et svar så må i finde ud af resten:)
Synes godt om
Ny brugerNybegynder
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.