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

Ext JS / Sencha Discussion :

recalcul automatique de date avec le DateField/DatePicker


Sujet :

Ext JS / Sencha

  1. #1
    Nouveau candidat au Club
    Inscrit en
    Août 2011
    Messages
    2
    Détails du profil
    Informations forums :
    Inscription : Août 2011
    Messages : 2
    Par défaut recalcul automatique de date avec le DateField/DatePicker
    bonjour à tous,

    je rencontre actuellement un problème avec le DatePicker.
    Ce dernier convertit automatiquement les données saisies dans le champ à côté du calendrier. Du coup, il m'est impossible de faire les contrôles que je souhaite sur les dates et de ré-afficher ce que l'utilisateur a saisi pour qu'il se rende compte de son erreur.

    Dans la configuration de mon objet DateField, j'ai les options suivantes:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
     
     var config = {format: 'd/m/Y'};
     Ext.apply(config, options);
     Ext.apply(config, {
            name: input.name,
            inputType : input.type,
            width: input.getWidth() + 16, //le bouton
            applyTo: input.id
     });
     var date = new Ext.form.DateField(config);
    Je pensais ajouter l'option ce qui donnerait ça
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
     var config = {format: 'd/m/Y'};
     Ext.apply(config, options);
     Ext.apply(config, {
            validate : false,
            name: input.name,
            inputType : input.type,
            width: input.getWidth() + 16, //le bouton
            applyTo: input.id
     });
     var date = new Ext.form.DateField(config);
    mais ça ne semble pas fonctionner.

    Pouvez-vous me dire s'il existe un moyen de désactiver ce re-calcul s'il vous plait ?

    Merci d'avance de vos réponses.

  2. #2
    Expert confirmé
    Avatar de sekaijin
    Homme Profil pro
    Urbaniste
    Inscrit en
    Juillet 2004
    Messages
    4 205
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 61
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : Urbaniste
    Secteur : Santé

    Informations forums :
    Inscription : Juillet 2004
    Messages : 4 205
    Par défaut
    qu'entends tu par recalculer ??

    le date picker utilise le fichier locale
    si aucun n'est chargé il utilise la local us

    ne pas utiliser dateFormat dans le champs mais juste charger la locale FR

    une date dans mon data store sera affichée avec le format de la locale.

    pour les champs datefield les attribut minValue et maxValue sont des dates (au sens data) disabledDates est un tableau de date invalides
    disabledDays les jours interdits et enfin regex avec ça tu peux faire tes vérifications
    le submitformat définit le format dans lequel la date sera envoyé au serveur
    http://dev.sencha.com/deploy/ext-4.0...orm.field.Date


    il n'y a pas de recalcul
    il y a d'un côté la date la donnée et c'est sur ça qu'extjs se base pour faire les vérifs
    et de l'autre sa représentation (l'affichage) et là il se base sur la locale

    A+JYT

  3. #3
    Nouveau candidat au Club
    Inscrit en
    Août 2011
    Messages
    2
    Détails du profil
    Informations forums :
    Inscription : Août 2011
    Messages : 2
    Par défaut
    bonjour Sekaijin,

    tout d'abord, merci pour ta réponse.

    Par contre, en relisant mon poste, j'ai vu que j'avais mal exprimé mon problème.

    En effet, lorsque je parle de recalcul de la date par le date picker, j'aurai dû préciser dans le cas d'une erreur de saisie.

    Ex: dans mon champ date, sans passer par le calendrier, je saisis 45 (volontairement quelque chose qui ressemble en rien à une date) et sur le onBlur du champ, ext. me recalcule ce 45 et affiche dans le champ une date (14/09/2011).

    J'espère avoir été plus clair.

  4. #4
    Expert confirmé
    Avatar de sekaijin
    Homme Profil pro
    Urbaniste
    Inscrit en
    Juillet 2004
    Messages
    4 205
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 61
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : Urbaniste
    Secteur : Santé

    Informations forums :
    Inscription : Juillet 2004
    Messages : 4 205
    Par défaut
    le plus simple est de ne pas le rendre éditable.
    (modifiable juste par le date picker)

    par contre si tu laisse la saisie manuelle
    tout ce qui peut être converti en date le sera

    et ça aide
    si tu saisi le 00/03/2012 cela te donnera le 29/02/2012
    et si tu saisi le 00/03/2011 tu aura le 28/02/2011

    généralement en interdisant la saisie et en jouant avec tous les attribut de contrôle de la valeur tu dois t'en sortir

    enfin il n'y a pas re calcul
    lorsque tu tape un entier cela corresponds un nombre de jour du mois courant ainsi 01 le premier du mois courant donc le 01/08/2011
    31 donne le 31/08/2011
    etc.
    lorsque ton nombre dépasse le dernier jour tout comme pour mon exemple de février
    tu avance dans le temps et te positionne à x jour du début du moi courant

    45 c'est 31 + 14 donc le 14/09/2011
    si tu fais la même expérience un mois de 30 jours ça te donnera le 15 du mois suivant


    de même dans la saisie abrégées tu peux saisir le jour et le mois
    12/09 ce qui corresponds au 12/09 de l'année en cours donc le 12/09/2011
    c'est très pratique pour obtenir une date particulière
    45 jours après le début du mois de février
    45/02 = > le 17/03/2011

    mais le décompte fonctionne aussi sur les mois
    aujourd'hui + 5 mois
    30/13 => 30/01/2012

    tu n'as donc pas saisi n'importe quoi mais une date.
    45 le 45 eme jour du mois courant est le 14 eme de septembre 2011

    A+JYT

Discussions similaires

  1. Réponses: 21
    Dernier message: 29/12/2012, 20h41
  2. Validation de Date avec DatePicker
    Par houleyh dans le forum VBA Access
    Réponses: 2
    Dernier message: 11/08/2012, 23h48
  3. sélectionner une date avec Datepicker
    Par laurentSc dans le forum jQuery
    Réponses: 18
    Dernier message: 19/03/2012, 17h10
  4. grisement des dates avec datepicker
    Par Riwalenn dans le forum jQuery
    Réponses: 1
    Dernier message: 13/03/2011, 23h32
  5. Réponses: 2
    Dernier message: 02/05/2007, 14h47

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