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

Struts 1 Java Discussion :

[Struts-validator] Probleme de 0


Sujet :

Struts 1 Java

  1. #1
    Membre du Club
    Profil pro
    Inscrit en
    Mars 2004
    Messages
    107
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2004
    Messages : 107
    Points : 62
    Points
    62
    Par défaut [Struts-validator] Probleme de 0
    Bonjour,

    Voila la description de mon formulaire dans mon fichier validation.xml :

    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
     
    <form name="ChoixAnnonceurPeriodeForm">
                <field property="jjdeb" depends="required,integer,intRange">
                        <arg0 key="periodechoix.jour"/>
             	     <arg1 name="intRange" key="${var:min}" resource="false"/>
             	     <arg2 name="intRange" key="${var:max}" resource="false"/>
                         <var>
                           <var-name>min</var-name>
                           <var-value>1</var-value>
                         </var>
                         <var>
                           <var-name>max</var-name>
                           <var-value>31</var-value>
                         </var>            
                </field>
    Voila, ca fonctionne presque parfaitement.

    donc, ca fonctionne pour : 01 jusqua 07.
    quand je met 08 09 le javascript me sort que ce n'est pas un integer !!

    voila, comprends pas pkoi, et c pas cool.

    comment faire??

    PS: ca marche si je met 8 ou 9.

    ++
    Sylvain

  2. #2
    Membre actif
    Profil pro
    Inscrit en
    Juillet 2002
    Messages
    239
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2002
    Messages : 239
    Points : 239
    Points
    239
    Par défaut Re: [Struts-validator] Probleme de 0
    Citation Envoyé par sylvain_neus
    Bonjour,

    Voila la description de mon formulaire dans mon fichier validation.xml :

    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
     
    <form name="ChoixAnnonceurPeriodeForm">
                <field property="jjdeb" depends="required,integer,intRange">
                        <arg0 key="periodechoix.jour"/>
             	     <arg1 name="intRange" key="${var:min}" resource="false"/>
             	     <arg2 name="intRange" key="${var:max}" resource="false"/>
                         <var>
                           <var-name>min</var-name>
                           <var-value>1</var-value>
                         </var>
                         <var>
                           <var-name>max</var-name>
                           <var-value>31</var-value>
                         </var>            
                </field>
    Voila, ca fonctionne presque parfaitement.

    donc, ca fonctionne pour : 01 jusqua 07.
    quand je met 08 09 le javascript me sort que ce n'est pas un integer !!

    voila, comprends pas pkoi, et c pas cool.

    comment faire??

    PS: ca marche si je met 8 ou 9.

    ++
    Sylvain
    Si j'ai bien compris tu dois faire valider des jours. Est-ce que l'utilisateur tape 01 ... 09 dans une zone de saisie ou il selectionne a partir d'une combo box?

    David

  3. #3
    Membre du Club
    Profil pro
    Inscrit en
    Mars 2004
    Messages
    107
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2004
    Messages : 107
    Points : 62
    Points
    62
    Par défaut
    il tape 01 dans une zone de saisie.

    le souci, c'est que a partir de 8, il n'accepte plus que 8, et pas 08.
    il me sort que c pas un integer ...

  4. #4
    Membre actif
    Profil pro
    Inscrit en
    Juillet 2002
    Messages
    239
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2002
    Messages : 239
    Points : 239
    Points
    239
    Par défaut
    Citation Envoyé par sylvain_neus
    il tape 01 dans une zone de saisie.

    le souci, c'est que a partir de 8, il n'accepte plus que 8, et pas 08.
    il me sort que c pas un integer ...
    Effectivement c'est bizarre qu'il accepte 01 a 07.

    Peut-etre qu'il faut passer par les patterns genre
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    0[1-9] | [1-2][0-9] | 3[0-1]
    Je ne suis pas sur de l'expression reguliere mais si tu tiens a 0X je pense que c'est une voie a explorer.

  5. #5
    Membre du Club
    Profil pro
    Inscrit en
    Mars 2004
    Messages
    107
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2004
    Messages : 107
    Points : 62
    Points
    62
    Par défaut
    oki, je vais voir!

    merci pour le renseignement ;-)

  6. #6
    Membre du Club
    Profil pro
    Inscrit en
    Mars 2004
    Messages
    107
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2004
    Messages : 107
    Points : 62
    Points
    62
    Par défaut
    bon, ben j'ai trouvé, et je presente ma solution, on sait jamais, ca peut aider :

    alors, le premier blocage etais au niveau du integer.
    08 et 09 n'etais pas considéré comme integer.
    en regardant le fichier validations-rules.xml qui génére le javascript, j'ai trouvé ca :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    } else if (argvalue.charAt(0) == "0") {
                       validChars = "01234567";
                       startFrom = 1;
    j'ai donc plutot opté pour
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    validChars = "0123456789";
    apres, j'ai eus un probleme au niveau du intRange.
    en fait, quand il recupéré 08, il fait un parseInt dessus, et ca lui sort 0.

    coooool, donc j'ai squizé ce probleme en faisant dans la fonction intRange :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
     
                            var iValue = parseInt(field.value);
                            if(field.value == "08"){
                            iValue = 8;
                            }
                            if(field.value == "09"){
                            iValue = 9;
                            }
    Voila, now ca marche correctement.

    A+
    Sylvain

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

Discussions similaires

  1. [Validator] problème struts validator
    Par ge-lt dans le forum Struts 1
    Réponses: 2
    Dernier message: 05/07/2006, 15h55
  2. [ Struts ][ Validator ]problème d'affichage
    Par sebus dans le forum Struts 1
    Réponses: 13
    Dernier message: 17/05/2006, 16h32
  3. [Struts Validator] probleme affichage des erreurs
    Par Morpheus2144 dans le forum Struts 1
    Réponses: 7
    Dernier message: 24/01/2006, 15h25
  4. [Struts]Validation de formulaire
    Par djoukit dans le forum Struts 1
    Réponses: 4
    Dernier message: 12/03/2004, 09h12
  5. [Struts][javascript]Probleme de 'id' dans un <html:hidden
    Par FreshVic dans le forum Struts 1
    Réponses: 5
    Dernier message: 11/02/2004, 10h57

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