Bonjour,
J'utilise un calendrier javascript récupéré ici : http://www.kelvinluck.com/assets/jqu...emo/index.html
j'ai dans ma page le div datepicker pour l'afficher
dans le head de la page j'utilise le code suivant qui initialise le calendrier et me sélectionner les dates voulus dessus :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5<body> <div id="datepicker"> </div> </body>
je fait donc appel à la fonction dpSetSelected(); qui prend comme argument une date à laquelle je rajoute un séparateur ":" et une lettre pour pouvoir par la suite rajouter une classe css à cette date selectioné.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25 <script language="javascript" type="text/javascript"> $(document).ready(function() { $("#datepicker").datePicker( { inline:true, selectMultiple:true, startDate:"01/01/2008" } ) .bind("click",function(e, selectedDate, $td) { //alert(selectedDate); } ); $('#datepicker').dpSetSelected('29/04/2009:j'); $('#datepicker').dpSetSelected('10/04/2009:a'); $('#datepicker').dpSetSelected('17/04/2009:a'); $('#datepicker').dpSetSelected('30/04/2009:p'); $('#datepicker').dpSetSelected('02/05/2009:a'); $('#datepicker').dpSetSelected('04/05/2009:j'); $('#datepicker').dpSetSelected('10/05/2009:p'); $('#datepicker').dpSetSelected('25/05/2009:a'); }); </script>
dans le fichier jquery.datePicker.js dans la fonction setSelected qui gère les sélections de date, je coupe ma chaine et j'ajoute donc la classe voulu à la date
jusqu'ici c'est bon ma technique fonctionne, les dates sont bien affiché avec la classe donnée, seulement lorsqu'on navigue dans le calendrier (changement de mois) les dates sélectionné sont bien gardés, mais avec toute la même classe de base du script "selected". j'ai eu beau chercher dans le fichier jquery.datePicker.js par ou se perdait l'information, je ne trouve pas.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20 var quoi=d.split(':'); $td = $(this); if (s.selectWeek) { $td.parent()[v ? 'addClass' : 'removeClass']('selectedWeek'); } if(quoi[1]=="p") { var laclass="page"; } else if(quoi[1]=="j") { var laclass="journal"; } else if(quoi[1]=="a") { var laclass="alerte"; } $td[v ? 'addClass' : 'removeClass'](laclass);
si quelqu'un peut m'aider je lui serait très reconnaissant.
exemple en ligne avec tout les fichiers dispos ici : http://www.chezneg.fr/calendrier/
Partager