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 1.3.8] Checkbox dont la valeur = true alors qu'elle est décochée


Sujet :

Struts 1 Java

Mode arborescent

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Invité
    Invité(e)
    Par défaut [Struts 1.3.8] Checkbox dont la valeur = true alors qu'elle est décochée
    Bonjour tout le monde!

    Je m'arrache les cheveux sur un problème de checkbox que je n'arrive pas à comprendre.

    J'ai une page avec 2 checkbox:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    <html:checkbox property="add_product1" />Add Product 1
    []
    <html:checkbox property="add_product2" />Add Product 2
    Dans l'ActionForm associé à mon formulaire, j'ai les champs et les getter/setter suivants:
    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
     
        private boolean add_product1;
     
        public boolean isAdd_product1() {
            return this. add_product1;
        }
        public void setAdd_product1(boolean add_product1) {
            this. add_product1 = add_product1;
        }
     
        private boolean add_product2;
     
        public boolean isAdd_product2() {
            return this. add_product2;
        }
        public void setAdd_product2(boolean add_product2) {
            this. add_product2 = add_product2;
        }
    Dans le reset() de l'ActionForm, j'initialise mes 2 booléens à false:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
        public void reset() {
            []
            add_product1 = false;
            add_product2 = false;
        }
    Dans mon formulaire, lorsque l'utilisateur change l'item sélectionné dans un popup menu, une action est lancée par l'intermédiaire de la fonction retrieveURL de la biblio ajax.js, qui permet de ne recharger qu'une partie de la page (tout ce qui se trouve entre de <span id="mon_id"></span>, ce qui est le cas de mes checkbox).

    Le problème, c'est qu'avant même que mon action ne soit traitée, Struts mets mes 2 booléens à la valeur true, que la checkbox soit cochée ou pas. Et ça je ne comprends vraiment pas pourquoi…

    En effet, j'ai mis un point d'arrêt sur les setters de mes 2 booléens et lorsque je passe en debug je vois que les setters sont appelés avec comme paramètre true, même si les checkbox ne sont pas cochées, exactement comme s'il y avait une erreur de mapping entre mon formulaire et mon ActionForm (avant même d'arriver au traitement de mon action dans ma classe Action)… Pourquoi?

    Selon la FAQ Struts, si la checkbox n'est pas cochée le champ associé devrait être à null, or il est à true…

    Merci d'avance pour votre aide.

    PS: j'ai essayé la même chose avec des String à la place des booléens et j'obtiens la même chose…
    Dernière modification par Invité ; 22/05/2007 à 07h32.

Discussions similaires

  1. Xhtml et datable avec <h:inputText et tout type input checkbox dont son valeur est une Liste
    Par richfaces dans le forum Balisage (X)HTML et validation W3C
    Réponses: 1
    Dernier message: 19/08/2010, 09h41
  2. [AC-2007] Test d'une valeur pour savoir si elle est nulle
    Par glooping dans le forum IHM
    Réponses: 2
    Dernier message: 01/10/2009, 11h26
  3. [checkbox] Récupération des valeurs de checkbox
    Par chng001 dans le forum Struts 1
    Réponses: 13
    Dernier message: 07/09/2009, 20h31
  4. [struts] [checkbox] récupération des valeurs cochées
    Par abourell dans le forum Struts 1
    Réponses: 16
    Dernier message: 10/06/2005, 20h58
  5. [struts] mémorisation d'une checkbox avec cookie
    Par rocco dans le forum Struts 1
    Réponses: 3
    Dernier message: 22/04/2004, 12h39

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