jsSimpleDatePickr calendrier Javascript
Calendrier Javascript gratuit
jsSimpleDatePickr est un sélecteur de date Javascript gratuit
- Simple et rapide
- Peut afficher plusieurs mois
- Capable de fonctionner sans librairie externe
- Interprête tous types de format de date
- Capable d'ajouter ou de soustraire des mois ou des années
- Stylisé entièrement en CSS
- Léger (10 316 octets non compressé, 6 746 compressé)
- Un objet Javascript (pas de variables ou de fonctions qui traînent)
- Testé sur Safari (5.1), Firefox (25.0), Internet Explorer (7, 8), Chrome (31)
Vous pouvez télécharger jsSimpleDatePickr seul et l'utiliser tel quel ou utiliser le configurateur.
Plus d'informations sur le blog.
Historique
24/11/2017
Correction d'une anomalie. Si vous utilisiez une fonction de callback, le calendrier renvoyait une date au format JJ/MM/AAAA, quelque que soit le paramètre dateMask. Dorénavant, il passe la date comme défini dans le mask.
calObj = new jsSimpleDatePickr();
calId = calObj.CalAdd({
'divId': "calendarMain",
'dateMask': 'AAAA-MM-JJ',
'callBack': 'CalendarClic',
});
function CalendarClic(aDate){
console.log(aDate); // AAAA-MM-JJ
}
12/01/2017
Correction d'un bug. Si hideOnClick était faux le calendrier n'était pas redessiné après un clic sur une date.
3/12/2016
Ajout des deux nouveaux paramètres :
- dateMask : définit le mask d'affichage de la date.
- dateCentury : définit le siècle d'affichage. Utile uniquement si vous utilisez des années à 2 chiffres.
dateMask est un texte dans lequel la fonction va chercher et JJ par le jour, MM par le mois et AA ou AAAA par l'année. Vous pouvez utiliser des mask de tous types :
- JJ/MM/AAAA : par défaut
- MM/JJ/AAAA : format US.
- AAAA-MM-JJ : format SQL.
dateCentury est un chiffre qui sera ajouté à l'année si vous utilisez des dates dont l'année est au format AA.
25/11/2016
Revue complète du code avant mise en ligne.
Correction de petit bug.
21/07/2016 : Version 2
- Fusion des fichiers javascript avec jsSimpleDatePickrInit.js et jsSimpleDatePickr.js. Avantage : Un constructeur, plus de variables qui traînent et qui risqueraient d'entrer en conflit avec d'autres variables globales.
- Passage au DOM pour la construction des éléments du calendrier.
- Les données d'initialisation sont passées dans un objet plutôt qu'une suite de variable :
calObj = new jsSimpleDatePickr();
calId = calObj.CalAdd({
'divId': "calendarMain",
'buttonTitle': 'Afficher / Masquer le calendrier',
'callBack': 'MyFunction',
'monthLst': {'01', '02', '03', '04', '05', '06', '07', '08', '09', '10', '11', '12'},
'dayLst': {'Lu', 'Ma', 'Me', 'Je', 'Ve', 'Sa', 'Di'},
});
- divId : identifiant du bloc <div> qui va contenir le(s) calendrier(s).
- buttonTitle : nom qui sera affiché sur le bouton pour afficher / masquer la calendrier (facultatif) (btName).
- inputFieldId : identifiant du champ dans lequel sera affiché la date (facultatif) (fieldId).
- callBack : fonction appellée après un clic sur une date (facultatif) (funcName).
- displayNumber : nombre de calendrier affiché.
- titleMask : masque d'affichage pour le titre.
- navType : type de navigation (00 - 01 - 11).
- classTable : class des <table>.
- classDay : class des <td>.
- classDaySelected : class du <td> qui contient la date sélectionnée.
- monthLst : nom des mois à l'affichage.
- dayLst : nom des jours à l'affichage (en commençant par le dimanche).
- hideOnClick : boolean qui indique si le calendrier est masqué après un clic sur une date. (constDisplay).
- showOnLaunch : boolean qui indique si le calendrier est affiché à l'initialisation.
28/01/2015
La fonction calInit masque le bloc div ajoutée dans la page.
Le contenu du champ fieldId est directement interpêté dans la fonction callInit().
25/01/2015
Ajout de la variable constDisplay à la fonction d'initialisation calInit. Cette variable permet de laisser la calendrier constamment affiché. Merci à Marc Paris.
31/10/2014
Correction d'un bug lors de la naviguation d'un mois à l'autre si la date en cours est le 31 du mois.
24/06/14
Suppresion de la variable jsSDPMonthName. chaque objet a ses propres nom de mois.
Fonction calInit : ajout de la variable monthLst.
Fonction calInit : ajout de la variable dayLst.
23/06/14
Fonction calInit, suppression de la classe .calendarWrap sur le bloc div qui contient des boutons de navigation, le titre, etc.
Fonction calInit, le nom du div qui contient le calendrier est sauvegardé dans le tableau me.jsSDPObj.
22/06/14
Fonction calInit, le champ fieldId devient facultatif.
Ajout des fonctions calShow() et calHide().
Afficher tout l'historique
Téléchargement v2.11
Combien ça coûte ?
Ce code est gratuit pour vos projets personnels ou commerciaux.
N'oubliez pas l'attribution des crédits ;-)
Une question ?
Vous pouvez me contacter par email ou laisser un mot sur mon blog.
Configurez votre calendrier
Pour vous aider à intégrer le calendrier sur votre site, j'ai conçu des fonctions de communications ainsi que ce configurateur.
Paramétrez le calendrier à votre guise, puis cliquez sur l'onglet "Intégrez le calendrier dans votre site" pour voir le code html à ajouter à votre site ainsi que les fichiers à télécharger.
Vous devrez télécharger un fichier CSS pour le thème et un fichier Javascript contenant jsSimpleDatePickr ainsi qu'une liste de fonctions d'initialisations.
N'oubliez pas les raccourcis claviers affichés en bas de page pour naviguer plus rapidement.
#1 / Paramétrez le calendrier
Configuration
Bouton pour afficher / masquer
Vous pouvez lier le calendrier à un bouton pour l'afficher ou le masquer
Le bouton est crée automatiquement.
Champ de formulaire
Vous pouvez lier le calendrier à un champ de formulaire.
Lorsque l'utilisateur cliquera sur une date, le calendrier sera masqué et le champ du formulaire sera modifié avec la date choisie.
Appel de fonction
Vous pouvez définir le nom d'une fonction qui sera appellée lorsque l'utilisateur clique sur une date.
La fonction doit être dans l'objet globale window
.
Affichage de la date
Configurez le masque d'affichage de la date
JJ
pour le jourMM
pour le moisAAAA
pour l'année à 4 chiffresAA
pour l'année à 2 chiffres
Si vous affichez la date avec deux chiffres, vous pouvez spécifier le siècle par défaut.
Configurez le masque d'affichage du titre
M
pour le moisAAAA
pour l'année à 4 chiffresAA
pour l'année à 2 chiffres
Attention : si vous désactivez la naviguation par mois et par année, le titre ne sera pas affiché.
Navigation
Si vous n'autorisez pas la navigation, le mois et l'année ne seront pas affiché sur le calendrier.
Affichage
Si la case est coché, le calendrier sera pas masqué lorsque l'utilisateur clique sur une date.
Si la case est coché, le calendrier sera pas affiché dès l'appel à CalAdd();
Affichage des mois
Définissez le nom de chaque mois de l'année
Raccourcis
Quelques raccourcis pour définir les noms des mois en français, anglais ou avec des chiffres.
Affichage des jours
Définissez le nom de chaque jour de la semaine
Thème
Choisissez le thème d'affichage du calendrier
Résultat
Comment intégrer le calendrier ? Téléchargez les fichiers Javascript CSS. Puis copiez-collez le code HTML ci-dessous. N'oubliez pas de lier les fichiers téléchargés à votre document HTML :
<link rel="stylesheet" type="text/css" href="" />
<script type="text/javascript" src="jsSimpleDatePickr.2.1.js"></script>
#2 / Intégrez le calendrier dans votre site
Javascript
Téléchargez le code jsSimpleDatePickr.2.1.js
HTML
Copiez-collez ce code dans votre document HTML