// https://api.jqueryui.com/datepicker/ //jQuery(document).ready(function($){ $(document).ready(function(){ //$( "#datepicker" ).datepicker({ $(".datepicker").datepicker({ // on doit pouvoir changer le mois changeMonth: true, // on doit pouvoir changer aussi l'année changeYear: true, // afficher le numéro de semaine showWeek: true, }); /* Moved to script.js // (EP 20200416) check de la saisie manuelle de TOUS les champs date type datepicker (class) // Dès la perte du focus //$("#datepicker").bind("change", function (event) { check_date_deb_inf_date_fin(); } ); //$("#datepicker").bind("change", function (event) { //$(".datepicker").bind("change", function (event) { //$(".datepicker").blur(function(){ $(".datepicker").on("change", function(event) { // (EP) check format [J]J/[M]M/AAAA //console.log("coucou"); // format général //if(this.value.match(/\d{1,2}[^\d]\d{1,2}[^\d]\d{4,4}/gi) == null) { // (EP) check format [J]J/[M]M/[AA]AA //if ( this.value.match(/^(\d{1,2})\/(\d{1,2})\/(\d{2}|\d{4})$/) == null ) { if (this.value == '') return true; $error_msg = ''; if ( this.value.match(/^(\d{1,2})\/(\d{1,2})\/(\d{4})$/) == null ) $error_msg = "Format de date invalide (doit être JJ/MM/AAAA)"; // Check value : doit être une date valide else { //var t = this.value.split(/[^\d]/); var t = this.value.split(/\//); var dd = parseInt(t[0], 10); var m0 = parseInt(t[1], 10) - 1; // Month in JavaScript Date object is 0-based var yyyy = parseInt(t[2], 10); // Si year sur 2 chiffres (AA), on passe à 4 (AAAA) //if (yyyy < 100) yyyy = 2000 + yyyy var d = new Date(yyyy, m0, dd); // new Date(2017, 13, 32) is still valid //console.log(d.getFullYear()); if(d.getDate() != dd || d.getMonth() != m0 || d.getFullYear() != yyyy) $error_msg = "Date invalide"; } // Si erreur if ($error_msg != '') { this.value = ""; alert($error_msg); // On supprime la saisie invalide pour éviter qu'elle puisse être soumise (submit) this.classList.add('error'); // stopper un "submit" éventuel //event.preventDefault(); this.focus(); } else if (this.classList.contains('error')) this.classList.remove('error'); }); */ }); // $(document).ready //$(".datepicker").regional['fr'] = { $.datepicker.regional['fr'] = { closeText: 'Fermer', prevText: 'Précédent', nextText: 'Suivant', currentText: 'Aujourd\'hui', monthNames: ['Janvier','Février','Mars','Avril','Mai','Juin','Juillet','Août','Septembre','Octobre','Novembre','Décembre'], monthNamesShort: ['Janvier','Février','Mars','Avril','Mai','Juin','Juillet','Août','Septembre','Octobre','Novembre','Décembre'], dayNames: ['Dimanche','Lundi','Mardi','Mercredi','Jeudi','Vendredi','Samedi'], dayNamesShort: ['Dim.','Lun.','Mar.','Mer.','Jeu.','Ven.','Sam.'], dayNamesMin: ['D','L','M','M','J','V','S'], weekHeader: 'Sem.', // (20200410 EP change) //dateFormat: 'dd-mm-yy', dateFormat: 'dd/mm/yy', // INVALIDE : //dateFormat: 'dd/mm/yyyy', firstDay: 1, isRTL: false, showMonthAfterYear: false, yearSuffix: '' }; $.datepicker.setDefaults($.datepicker.regional['fr']); /* $("#datepicker").blur(function(){ val = $(this).val(); val1 = Date.parse(val); if (isNaN(val1)==true && val!==''){ alert("error") } else{ console.log(val1); } }); */