IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

JavaScript Discussion :

Affichage calendrier en semaines


Sujet :

JavaScript

  1. #1
    Membre à l'essai
    Profil pro
    Inscrit en
    Novembre 2007
    Messages
    27
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2007
    Messages : 27
    Points : 16
    Points
    16
    Par défaut Affichage calendrier en semaines
    Bonjour,

    Je dois afficher un tableau de semaines selon une plage sélectionnée
    Date_début
    Date_fin
    De là, je peux avoir le numéro de la semaine de la date_debut et le numéro de la semaine de la date_fin.

    J'affiche un ligne si la semaine et la même ou plusieurs (n) selon (n = semaine_date_fin- semaine_date_debut)..

    On arrive à mon hic, si l'année change, ma boucle de n'est plus valide..
    Comment ajouter ses semaines en plus dans ma boucle?

    Exemple d'affichage du 13/03/2008 au 13/03/2009

    Annee mois num semaine Lun Mar Mer Jeu Ven Sam Dim
    2008 3 11 - - - 13 14 15 16
    12 17 18 19 20 21 22 23

    etc...
    2009 3 11 9 10 11 12 13 - -


    Mes vérifications de dates fonctionnent, avant la saisie dans une liste jour / liste mois / liste année (2 derniers chiffres).
    Dans l'idée je suis partie sur une logique de calculer le nombre de jours qui séparent les deux dates et d'incrémenter ma date 1 jusqu'à ce qu'elle soit égale à la date2 mais je me suis emmêlée entre mes boucles.

    J'ai tenté ceci :

    while(d.getTime() < d2.getTime()){
    affichage num_semaine de date_depart

    Si le jour = un dimanche (d.getDay()==0)
    on rajoute une ligne au tableau et on sort de la boucle for
    sinon
    pour lundi à dimanche:
    on cherche la position de départ et on complète la semaine
    rajouter un jour: d.setTime(d.getTime()+ (86400000));

    à la fin des boucles et des autres conditions
    si mon d.getTime() est => à mon d2.getTime()
    et là je force la sortie de mon while d'origine

    sinon je boucle sur une autre semaine.
    }

    Mais j'ai du mal gérer un truc, il revient dans mon while toujours ://
    Demo ( c'est probable que ça plante royal ^^")

    Merci pour vos idées,
    Mesca

    P.S. : j'espère que je ne me suis pas trompée de topic vu que je fais cela en javascript.

  2. #2
    Membre à l'essai
    Profil pro
    Inscrit en
    Novembre 2007
    Messages
    27
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2007
    Messages : 27
    Points : 16
    Points
    16
    Par défaut
    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
     
            alert("fin boucle for");
    	alert("nb de jours à ajouter à date 1: "+nb); // récup dans la boucle for
    	d.setTime(d.getTime()+ (86400000*nb));	
    	alert("date1 "+d);
    	alert("date2 "+d2);
    	if (d==d2){
    	  alert("break d==d2");
    	  break;
    	}
    	 if (d.getTime() == d2.getTime()){
    	   alert("break Time==");
    	   break;
    	}
     
    	if (d.getTime() > d2.getTime()){
    	   alert("break Time >");
    	   break;
    	}
    J'ai pu cibler mon erreur, les deux dates sont identiques et pourtant il je rentre pas dans les condition d ==d2
    J'ai fumblé en beauté?

  3. #3
    Expert éminent sénior

    Homme Profil pro
    Inscrit en
    Janvier 2007
    Messages
    13 474
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Secteur : Finance

    Informations forums :
    Inscription : Janvier 2007
    Messages : 13 474
    Points : 36 571
    Points
    36 571
    Par défaut
    Bonjour,
    un petit tour par la FAQ ?

    A+
    Pour tout savoir sur l'utilisation du forum

    En postant votre message, n'oubliez pas les Règles du Club.

  4. #4
    Membre à l'essai
    Profil pro
    Inscrit en
    Novembre 2007
    Messages
    27
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2007
    Messages : 27
    Points : 16
    Points
    16
    Par défaut
    Mes dates sont bien créées pourtant

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
     
    d = new Date();
    		d.setDate(QueryDate);
    		d.setMonth(QueryMonth-1);
    		d.setFullYear(QueryYear); 
    d2 = new Date();
    		d2.setDate(QueryDate2);
    		d2.setMonth(QueryMonth2-1);
    		d2.setFullYear(QueryYear2);

Discussions similaires

  1. Affichage calendrier pour la semaine
    Par fife59 dans le forum Développement Sharepoint
    Réponses: 1
    Dernier message: 22/10/2010, 08h39
  2. [Dates] Calendrier php (semaine->Mois)
    Par ChrisMan dans le forum Langage
    Réponses: 6
    Dernier message: 16/05/2007, 10h29
  3. [WD11] Affichage numéro de semaine
    Par Yaone dans le forum WinDev
    Réponses: 7
    Dernier message: 25/04/2007, 12h37
  4. [JFreeChart] Affichage numéro de semaine
    Par Julio_del_pueblo dans le forum 2D
    Réponses: 1
    Dernier message: 22/08/2006, 09h52
  5. Réponses: 2
    Dernier message: 20/03/2006, 16h29

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo