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 :

p'tit probème de format sur une date


Sujet :

JavaScript

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éprouvé Avatar de lodan
    Profil pro
    Inscrit en
    Juin 2006
    Messages
    2 064
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2006
    Messages : 2 064
    Par défaut p'tit probème de format sur une date
    Bonjour,

    J'ai une erreur de signalé sur ce bout de code au niveau du mois

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    function DateHeure()
    {
    	today   = new Date(); 
      	jour = today.getDate(); 
    	mois = today.getMonth()+1.toString().padLeft('0', 2);
    	annee = today.getYear();
    }
    Je veux un mois sur 2 caractères, donc j'ai ajouté un '0'.

    Je ne vois pas mon erreur

    Une idée sur la p'tite question

    Merci d'avance

  2. #2
    Expert éminent

    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
    Par défaut
    Bonjour,
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    mois=(today.getMonth()+1<10)?("0"+(today.getMonth()+1)):today.getMonth()+1;
    A+

  3. #3
    Membre éprouvé Avatar de lodan
    Profil pro
    Inscrit en
    Juin 2006
    Messages
    2 064
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2006
    Messages : 2 064
    Par défaut
    Merci c'est déjà beaucoup mieux,

    J'en profite pour une question d'affichage

    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
    function DateHeure()
    {
    	today   = new Date(); 
      	jour = today.getDate(); 
    	mois = (today.getMonth()+1<10)?("0"+(today.getMonth()+1)):today.getMonth()+1;
    	annee = today.getYear()+1900;
    	hours   = today.getHours(); 
    	minutes = today.getMinutes();
    	seconds = today.getSeconds();  
    	timeValue = hours; 
    	// Les prochaines conditions ne servent que pour l'affichage.
    	// Si le nombre de minute est inférieur à 10, alors on rajoute un 0 devant...
    	timeValue += ((minutes < 10) ? ":0" : ":") + minutes; 
    	timeValue += ((seconds < 10) ? ":0" : ":") + seconds;
    		alert(timeValue);
    	document.getElementById('date').value=+jour+"/"+mois+"/"+annee;
    	document.getElementById('heure').value=+timeValue;
    	timerID = setTimeout("DateHeure()",1000); 
    	timerRunning = true;
    }
    Dans l'affichage de l'heure, j'ai "NaN".

    J'ai placé un alert pour voir la valeur de "timeValue" et c'est correcte.

    Et là, je suis sûr qu'il n'y a pas d'erreur sur cette ligne :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    document.getElementById('heure').value=+timeValue;
    et dans mon html, j'ai :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <input id="heure" type="text" size="8" name="heure" onFocus="this.blur()">
    Certe l'heure formaté n'est pas un nombre.

  4. #4
    Expert éminent

    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
    Par défaut
    Essaye
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    var timeValue="";
    timeValue = hours;
    pour le forcer en char.
    Mettre hours à l'init te fait déclarer une variable nombre (du type de hours, en fait). Et du coup il le gère comme tel par la suite ...

    A+

  5. #5
    Membre éprouvé Avatar de lodan
    Profil pro
    Inscrit en
    Juin 2006
    Messages
    2 064
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2006
    Messages : 2 064
    Par défaut
    La valeur reste à "NaN"

    Si je fais mon
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    document.getElementById('heure').value=+timeValue;
    uniquement avec l'heure c'est bon, dès que je rajoute les minutes et les secondes cela ne va plus.

  6. #6
    Expert éminent

    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
    Par défaut
    Ca a peut-être rien à voir, mais visiblement tu as un "champ heure".
    Pourquoi y concatènes-tu la nouvelle heure ?
    Il faut "remplacer", non ?

    A+

  7. #7
    Membre éprouvé Avatar de lodan
    Profil pro
    Inscrit en
    Juin 2006
    Messages
    2 064
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2006
    Messages : 2 064
    Par défaut
    Heu ... oui

    avec :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    timeValue = hours; 
    	// Les prochaines conditions ne servent que pour l'affichage.
    	// Si le nombre de minute est inférieur à 10, alors on rajoute un 0 devant...
    	timeValue += ((minutes < 10) ? ":0" : ":") + minutes; 
    	timeValue += ((seconds < 10) ? ":0" : ":") + seconds;
    	alert(timeValue);
    l'alert me donne une bonne date.

    c'est donc là

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    document.getElementById('heure').value=+timeValue;
    que ça coince ?

    J'ai fait

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    document.getElementById('heure').value=timeValue;
    Et c'est bon

    Merci beaucoup pour l'accompagnement

  8. #8
    Rédacteur/Modérateur

    Avatar de SpaceFrog
    Homme Profil pro
    Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Inscrit en
    Mars 2002
    Messages
    39 658
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 75
    Localisation : Royaume-Uni

    Informations professionnelles :
    Activité : Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Secteur : Industrie

    Informations forums :
    Inscription : Mars 2002
    Messages : 39 658
    Billets dans le blog
    1
    Par défaut
    un petit conseil au passage ...
    j'ai eu des soucis de différences de valeurs retournées avec getYear ...
    Ma page Developpez - Mon Blog Developpez
    Président du CCMPTP (Comité Contre le Mot "Problème" dans les Titres de Posts)
    Deux règles du succès: 1) Ne communiquez jamais à quelqu'un tout votre savoir...
    Votre post est résolu ? Alors n'oubliez pas le Tag

    Venez sur le Chat de Développez !

  9. #9
    Membre éprouvé Avatar de lodan
    Profil pro
    Inscrit en
    Juin 2006
    Messages
    2 064
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2006
    Messages : 2 064
    Par défaut
    Exact, avec getFullYear(), je n'ai plus besoin d'ajouter 1900 à mon année.

    Merci

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Réponses: 0
    Dernier message: 23/03/2015, 19h21
  2. Réponses: 1
    Dernier message: 29/10/2007, 12h43
  3. Encore un problème sur le format d'une date!
    Par bygui dans le forum Langage
    Réponses: 1
    Dernier message: 26/06/2006, 08h41
  4. Problème lors d'un Update sur une date
    Par Nany dans le forum ASP
    Réponses: 3
    Dernier message: 19/05/2004, 22h37
  5. [SQL] Conditions sur une date dans une requete
    Par poufouille dans le forum Bases de données
    Réponses: 4
    Dernier message: 17/03/2004, 14h25

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