Avatar billede Kaspercp Nybegynder
10. maj 2012 - 11:05 Der er 3 kommentarer

Form validering

Hej eksperter.

Jeg sidder med en opgave i øjeblikket, som jeg gerne vil se om i kan hjælpe mig med.

Jeg har en kontakt form, hvor der skal laves validering på.
- Hvis vedkommende trykker "submit", og ingen af felterne er udfyldte, skal alle felterne skifte til at have et rødt border omkring, hvis de så udfylder feltet, skal det border så forsvinde, og det skal selvfølgelig også være sådan, at ved email f.eks. skal det også være en gyldig email, ellers forbliver den rød.

Hvis noget af det er udfyldt og der mangler 2 felter, så skal kun de 2 felter blive røde, og hvis det kan lade sig gøre, vil det også være smart, hvis man kunne låse submit knappen, indtil alle felterne er udfyldt, en form for en lås, men det er selvfølgelig ikke noget krav.
Bare en lille tilføjelse, men er der nogen som kan hjælpe mig med ovenstående, jeg har sådan set kun formen at vise jer.


<form action="#" method="post">
            <input type="text" name="name" id="name" class="fields" placeholder="Navn" />
            <input type="text" name="phone" id="phone" class="fields" placeholder="Nummer" />
            <input type="text" name="email" id="email" class="fields" placeholder="Email" />
            <textarea name="comments" id="comments"class="area" placeholder="Skriv din besked her">
<input type="submit" name="submit" class="submiting" value="Send besked" />
Avatar billede olsensweb.dk Ekspert
10. maj 2012 - 17:43 #1
prøv at søge herinde på "js+form+validation+2012" http://www.eksperten.dk/search?q=js%2Bform+validation%2B2012

prøv at google js form validation

første email validering kan du lave ved at skifte type fra text til email   
dette rettes
<input type="text" name="email" id="email" class="fields" placeholder="Email">
til
<input type="email" name="email" id="email" class="fields" placeholder="Email">

kan evt følges op med et regulært udtryk, da den type=email først virker i html5
http://www.w3.org/TR/html-markup/input.email.html

men du bruger i forvejen html5 egenskaben placeholder, læs
http://caniuse.com/input-placeholder
http://webdesignerwall.com/tutorials/cross-browser-html5-placeholder-text

det letteste vil være at lave en validering når du submitter
ret dette
<form action="#" method="post">
til dette
<form action="#" method="post" name="testfrm" onsubmit="return validate()">
og lav et js function ( validate() ) der valierer felterne

alternativt skal du lave en event på hvert felt, der checker, om det er tomt.
Avatar billede MorDuC Nybegynder
11. maj 2012 - 05:57 #2
et lille library med nogle smarte funktioner der er nemme at bruge.
og der er masser af eksempler på siden som kan bruges.

http://livevalidation.com/
Avatar billede olsensweb.dk Ekspert
11. maj 2012 - 08:37 #3
skal vi ud i nogle externe lib kunne man lige så godt kigge på noget jquery prøv at google jquery validation
http://docs.jquery.com/Plugins/Validation
http://bassistance.de/jquery-plugins/jquery-plugin-validation/ demo http://jquery.bassistance.de/validate/demo/

men jeg kan se at brugeren er igang med en it uddannelse, og bør nok have den grundlæggende forståelse af js og validering på plads, før han bruger externe libs
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