Rechercher : dans
Par :

[JAVASCRIPT] Calendrier => cliquable HELP !!

Dernière réponse le 26 sep 2006 à 10:33:42 elsadelatoundra, le 26 sep 2006 à 09:55:00 
 Signaler ce message aux modérateurs

Bonjour,

J'ai trouvé un calendrier sur un forum et je voudrais le rendre cliquable ...

Sur CCM j'ai trouvé une conversation d'il y a 4 ans à ce sujet donc je ne pense pas qu'on me réponde, mais les conseils que j'y ai trouvé sont bons ... Je ne sais juste pas les appliquer !!

Voici le code de mon calendrier :

<html>
<head>
<title>Calendrier</title>

<script langage="javascript">

<!-- //

var today = new Date();
var current_month = today.getMonth();
var current_year = today.getYear();

var month_name = new Array('Jan', 'Fev', 'Mar', 'Avr', 'Mai', 'Juin', 'Jui', 'Aou', 'Sep', 'Oct', 'Nov', 'Dec');

var day_number = new Array(12);
day_number[0]=31;
day_number[1]=(current_year % 4) == 0 ? 29 : 28;
day_number[2]=31;
day_number[3]=30;
day_number[4]=31;
day_number[5]=30;
day_number[6]=31;
day_number[7]=31;
day_number[8]=30;
day_number[9]=31;
day_number[10]=30;
day_number[11]=31;



function bot(current_month,current_year) {


parent.bot.document.write('<html>');
parent.bot.document.write('<body bgcolor="white">');
parent.bot.document.write('<center>');
parent.bot.document.write(month_name[current_month]+" - "+(current_year));
parent.bot.document.write('<table width="200" border="1">');
parent.bot.document.write('<tr>');
parent.bot.document.write(' <th>lun</th><th>mar</th><th>mer</th><th>jeu</th><th>ven</th><th>sam</th><th>dim</th>');
parent.bot.document.write('</tr>');
mday=1;
wday=1;
do {
 var date = new Date (current_year, current_month, mday);
 var day = date.getDay();
 if (wday == 1 ) {
  parent.bot.document.write("<tr>")
 }
 

  
 if (day == wday) {
  parent.bot.document.write("<td>");
  parent.bot.document.write(mday);
  parent.bot.document.write("</td>");
  mday ++;
 } else {
  parent.bot.document.write("<td></td>");
 }
 
 if (wday == 0 ) {
  parent.bot.document.write("</tr>")
 } 
 wday ++; wday %= 7;
 
} while (mday <= day_number[current_month]);
parent.bot.document.write('</table>');
parent.bot.document.write('<center>');
parent.bot.document.write('</body>');
parent.bot.document.write('</html>');

}


function next_month() {
 current_month++;
 current_month %= 12;
 if (current_month == 0 ) { current_year ++; }
 parent.bot.document.open();
 bot(current_month,current_year);
}


function prev_month() {
 current_month--;
 if (current_month < 0 ) { current_month = 11; current_year --; }
 parent.bot.document.open();
 bot(current_month,current_year);
}

function MAJDate(date_selected){ 
opener.document.form.date_selected.value=date_selected; 
window.close(); 
} 




 // --> 


</script>

</head>
<body bgcolor="white">
<center>

<a href="javascript:prev_month();"><img src="left.jpg" alt=">" border="0"></a>
&nbsp;&nbsp;&nbsp;&nbsp;
<a href="javascript:next_month();"><img src="right.jpg" alt=">" border="0"></a>

<script>
bot(current_month,current_year);
</script>

</center>
</body>
</html>

J'ai rajouté comme conseillé ici : www.commentcamarche.net/forum/affich-146648-le-calendrier-cliquable la fonction "MAJDate(date_selected)" et je voudrais rajouter les liens sur les dates qui sont de la forme :
<a href="javascript:MAJDate('10/09/2002')">10</a>
mais je ne sais pas comment faire !!

Si quelqu'un peut m'aider ce serait vraiment très cool !

Merci d'avance à toutes et tous ceux qui se pencheront sur mon problème ...


ellessa mange des cerises

Meilleures réponses pour « [JAVASCRIPT] Calendrier => cliquable HELP !! » dans :
Configurer hotmail sur iPhone VoirPour configurer Hotmail sur votre iphone sans passer par d'autres clients mail ou d'autres applications, suivez cette procédure : Ajoutez un nouveau compte : Allez dans : Réglages Mails Contacts Calendrier Cliquez sur "Ajouter un...
Hotmail sur iPhone VoirVoici la solution pour configurer Hotmail sur votre Iphone gratuitement et sans passer par d'autres clients mail ou d'autres applications. Ajout d'un nouveau compte Allez dans Réglages, puis dans Mails, Contacts, Calendrier Cliquez sur...
Comment faire un calendrier 2009 personnalisé ? VoirOutils classiques Votre calendrier imprimé avec photos perso Et aussi : les widgets en ligne Des tas de possibilités pour créer un calendrier 2009 à son goût. Pour l'utiliser au quotidien sur son PC, pour l'imprimer, pour offrir, pour...
Javascript - Les événements VoirQu'appelle-t-on un événement? Les événements sont des actions de l'utilisateur, qui vont pouvoir donner lieu à une interactivité. L'événement par excellence est le clic de souris, car c'est le seul que le HTML gère. Grâce au Javascript il est...
Javascript - Les variables VoirLe concept de variable Une variable est un objet repéré par son nom, pouvant contenir des données, qui pourront être modifiées lors de l'exécution du programme. En Javascript, les noms de variables peuvent être aussi long que l'on désire,...
Javascript - Introduction au langage Javascript VoirQu'est-ce que le Javascript? Le Javascript est un langage de script incorporé dans un document HTML. Historiquement il s'agit même du premier langage de script pour le Web. Ce langage est un langage de programmation qui permet d'apporter des...

1

elsadelatoundra, le 26 sep 2006 à 10:14:31
  • +1

Début de réponse :

function bot(current_month,current_year) {


parent.bot.document.write('<html>');
parent.bot.document.write('<body bgcolor="white">');
parent.bot.document.write('<center>');
parent.bot.document.write(month_name[current_month]+" - "+(current_year));
parent.bot.document.write('<table width="200" border="1">');
parent.bot.document.write('<tr>');
parent.bot.document.write(' <th>lun</th><th>mar</th><th>mer</th><th>jeu</th><th>ven</th><th>sam</th><th>dim</th>');
parent.bot.document.write('</tr>');
mday=1;
wday=1;
do {
 var date = new Date (current_year, current_month, mday);
 var day = date.getDay();
 if (wday == 1 ) {
  parent.bot.document.write("<tr>")
 }
 

  
 if (day == wday) {
  parent.bot.document.write("<td>");
  parent.bot.document.write("<a href=");
  parent.bot.document.write("'MAJDate(");
  parent.bot.document.write(mday+"/"+current_month+"/"+current_month+"')>"+mday+"</a>");
//  parent.bot.document.write(mday);
  parent.bot.document.write("</td>");
  mday ++;
 } else {
  parent.bot.document.write("<td></td>");
 }
 
 if (wday == 0 ) {
  parent.bot.document.write("</tr>")
 } 
 wday ++; wday %= 7;
 
} while (mday <= day_number[current_month]);
parent.bot.document.write('</table>');
parent.bot.document.write('<center>');
parent.bot.document.write('</body>');
parent.bot.document.write('</html>');

}


Voilà ce que j'ai réussi à faire dans un élan d'inspiration !!
ellessa mange des cerises

Répondre à elsadelatoundra

2

 elsadelatoundra, le 26 sep 2006 à 10:33:42

Mes liens marchent maintenant mais j'aimerais faire marcher le retour de ce popup pour récupérer la date cliquée :

function MAJDate(date_selected){ 
opener.document.form.date_selected.value=date_selected; 
window.close(); 
} 


Comme aide avec ce code, y avait le petit commentaire suivant :
form : c'est le nom du formulaire qui est dans main.php
date_selected : c'est le champ texte où tu veux affiché la date sélectionné


Ce que je ne comprends pas c'est comment ça marche. Moi mon formulaire se trouvant sur la page "accueil.php" s'appelle "date" et le champ texte est aussi "date_selected" chez moi ...

J'ai donc :
function MAJDate(date_selected){ 
opener.document.date.date_selected.value=date_selected; 
window.close(); 
} 


Mais ça ne marche pas : quand je clique sur une date, toujours sous l'url localhost/cal/calendar.html s'affiche Impossible de trouver la page.

Mais il ne se trouvent pas dans le même dossier, c'est peut-être ça ... auquel cas, comment indiquer un chemin ? avec opener.document ??

Bref, une fois de plus, j'ai besoin de vous !!


ellessa mange des cerises

Répondre à elsadelatoundra