Hey,
Voor een website heb ik een soort van quiz-je gemaakt. De gebruiker kan achter bepaalde woorden een waarde kiezen (van 1 t/m 4) en geeft daarmee de belangrijkheid aan. 4 = meest, 1 = minst.
Nu wil ik een validatie dat er per vraag wordt gecontroleerd of alle waarden gebruikt zijn 1 t/m 4 (dat er niet overal 1 staat, of dat een waarde meerdere keren gebruikt wordt).
Weet iemand hoe dit eenvoudig kan?
Hieronder het stukje code waar het om gaat.
Elke vraag staat in zijn eigen table (dat maakt het valideren misschien makkelijker?
Code:<table class="table"><thead> <tr> <th>Vraag 1</th> <th>Punten</th> </tr> </thead> <tbody> <tr> <td>Optimistisch</td> <td> <select class="selecti"> <option value="1">1</option> <option value="2">2</option> <option value="3">3</option> <option value="4">4</option> </select> </td> </tr> <tr> <td>Zelfverzekerd</td> <td> <select class="selectd"> <option value="1">1</option> <option value="2">2</option> <option value="3">3</option> <option value="4">4</option> </select> </td> </tr> <tr> <td>Nauwkeurig</td> <td> <select class="selectc"> <option value="1">1</option> <option value="2">2</option> <option value="3">3</option> <option value="4">4</option> </select> </td> </tr> <tr> <td>Harmonieus</td> <td> <select class="selects"> <option value="1">1</option> <option value="2">2</option> <option value="3">3</option> <option value="4">4</option> </select> </td> </tr> </tbody> </table>
- Meerdere <select>'s valideren
-
24-08-2014, 19:44 #1
- Berichten
- 348
- Lid sinds
- 15 Jaar
Meerdere <select>'s valideren
-
25-08-2014, 02:37 #2Particulier
- Berichten
- 1.412
- Lid sinds
- 15 Jaar
Re: Meerdere <select>'s valideren
Het beste kun je een lege optie toevoegen die standaard is geselecteerd.
Stel dat iemand overal een '1' invult, dan zal diegene een fout krijgen omdat je controleerd of niet alles een één is.
Code:<select class="select"> <option value="">Selecteer een optie</option> <option value="1">1</option> <option value="2">2</option> <option value="3">3</option> <option value="4">4</option> </select>
Code://wachten tot de pagina is geladen $(document).ready(function () { // event koppelen aan de knop $("IDSUBMITKNOP").on("click",function(e){ //Voorkomen dat de standaard actie van de knop wordt uitgevoerd e.preventDefault(); //een flag onthouden voor als er een fout is gevonden, //zodat de gebruiker maar één melding krijgt. var errorFound = false; //elke select langs lopen $("table select").each(function(){ //controleren of we al een fout hebben gevonden, anders blijven er alerts komen. if (errorFound == false){ //waarde uit de select halen var value = $(this).val(); //Controleren of de waarde niet niets is //(voor waarde "1", vul je "1" tussen de "") if(value == ""){ //waarde is niets dus een melding geven dat deze niet ingevuld is var subject = $(this).closest("tr").find("td").first(); alert("Er is geen antwoord ingevuld bij vraag "+ subject +"); //de flag op true zetten zodat we de loop sluiten en niet alerts blijven strooien. errorFound = true; } } }); if(errorFound == false){ //er zijn geen fouten gevonden, doe er wat mee :) alert("Oke, geen fouten"); } }); }
Plaats een
- + Advertentie
- + Onderwerp
Marktplaats
Webmasterforum
- Websites algemeen
- Sitechecks
- Marketing
- Domeinen algemeen
- Waardebepaling
- CMS
- Wordpress
- Joomla
- Magento
- Google algemeen
- SEO
- Analytics
- Adsense
- Adwords
- HTML / XHTML
- CSS
- Programmeren
- PHP
- Javascript
- JQuery
- MySQL
- Ondernemen algemeen
- Belastingen
- Juridisch
- Grafisch ontwerp
- Hosting Algemeen
- Hardware Info
- Offtopic