Form Builder ieder jaar automatisch 1 jaar ophogen

Nederlandse ondersteuning voor CMS Made Simple

Moderator: velden

Post Reply
willemiens
Forum Members
Forum Members
Posts: 10
Joined: Mon Jul 26, 2010 10:46 am

Form Builder ieder jaar automatisch 1 jaar ophogen

Post by willemiens »

Hallo,

Voor meerdere websites maak ik naar volle tevredenheid gebruik van de Form Builder module. Op dit moment ben ik bezig met een website waar men nieuwe leden kan aanmelden doormiddel van een Form Builder formulier. Ik kan instellen dat het dropdown menu van bijvoorbeeld 1900 - 2024 laat zien. Dit vind ik niet zo netjes staan omdat we natuurlijk nog lang geen 2024 zijn. Is het ook mogelijk om dit nu op 1900- 2015 te zetten en dat Form Builder er op 01-01-2016 automatisch 2016 aan toevoegt?

Alvast bedankt!

Willemiens
Jos
Support Guru
Support Guru
Posts: 4019
Joined: Wed Sep 05, 2007 8:03 pm

Re: Form Builder ieder jaar automatisch 1 jaar ophogen

Post by Jos »

Met het datum-veld van FormBuilder heb ik het nog niet gezien/geprobeerd, maar het kan wel eenvoudig als je een standaard tekstveld voor de datum in FormBuilder gebruikt.

De oplossing: jQueryUI Datepicker, zie een voorbeeld hier: http://tinyurl.com/lx369w7

stap 1:
maak voor de datum een nieuw tekstinvoer veld aan in je formulier in Formbuilder, met de volgende settings:
- Veldvalidatie: moet voldoen aan een reguliere expressie
- Maximum lengte: 10
- CSS-klasse voor dit veld: datepicker
- Validatie Regex: /[0-3][0-9]-[0-1][0-9]-20[0-4][0-9]/

stap 2:
Ga naar de contentpagina waar je je formulier hebt ingevoegd.
Zet bij die pagina in de opties tab, veld Pagina specifieke metadata:

Code: Select all

{literal}
<__script__ type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.3.2/jquery.min.js"></__script>
<__script__ type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jqueryui/1.7.2/jquery-ui.min.js"></__script>
<link type="text/css" rel="stylesheet" 
	href="http://ajax.googleapis.com/ajax/libs/jqueryui/1.7.2/themes/smoothness/jquery-ui.css" />

<__script__ type="text/javascript">
$(document).ready(function() {
	$(function() {$('div.datepicker input').datepicker({
		dateFormat: 'dd-mm-yy',
		maxDate: '+1d',
		dayNamesMin: ['zo', 'ma', 'di', 'wo', 'do', 'vr', 'za'],
		monthNames: ['januari','februari','maart','april','mei','juni','juli','augustus','september','oktober','november','december']
	});});
});
</__script>
{/literal}
klaar ben je :)
willemiens
Forum Members
Forum Members
Posts: 10
Joined: Mon Jul 26, 2010 10:46 am

Re: Form Builder ieder jaar automatisch 1 jaar ophogen

Post by willemiens »

Bedankt voor je reactie maar dit is niet wat ik voor ogen heb. Met de agenda is het lastig als je bijv. geboren bent in 1980. Omdat je dan alle maanden 1 voor 1 terug moet. Zo moet je dus wel 12 maanden x 35 jaar terug klikken. Om een geboortedatum aan te geven vind ik dit niet handig. Ik wil het liefst gebruik maken van 3 dropdownvelden naast elkaar met dag-maand-jaar. Alleen het jaar moet wel up-to-date blijven zonder dat ik elk nieuw jaar in januari er 1 jaar bij op moet zetten.
User avatar
velden
Dev Team Member
Dev Team Member
Posts: 3497
Joined: Mon Nov 28, 2011 9:29 am

Re: Form Builder ieder jaar automatisch 1 jaar ophogen

Post by velden »

Als je toch met jQuery gaat werken zou ik kijken of je niet de jaren later dan huidige jaar kunt verwijderen uit de keuze lijst.

Onderstaande javascript zou moeten werken (als het een standaard formbuilder datum selectieveld is). Het vereist wel jQuery library included.

Code: Select all

<__script__ type="text/javascript">
$( document ).ready(function() {
  year = new Date().getFullYear();
    $("select[id$=year]").children("option").each(function(){
      if ($(this).val() > year){
	$(this).remove();
    }
  });
});
</__script>
willemiens
Forum Members
Forum Members
Posts: 10
Joined: Mon Jul 26, 2010 10:46 am

Re: Form Builder ieder jaar automatisch 1 jaar ophogen

Post by willemiens »

Het is gelukt! Super bedankt ;D
Post Reply

Return to “Dutch - Nederlands”