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 :

[CheckBox] Problème de réinitialisation


Sujet :

Struts 1 Java

  1. #1
    Membre confirmé
    Profil pro
    Inscrit en
    Juin 2004
    Messages
    228
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2004
    Messages : 228
    Par défaut [CheckBox] Problème de réinitialisation
    Bonjour j'ai un leger probleme avec les check boxes de struts.
    J'ai uen page avec un formulaire et ce formulaire contien une check boxe.
    l esubmit du formulaire fait se réafficher la jsp avec un bean:write de tous les champs rentrés dans le formulaire.

    Le bean:write me donne ce que je veux pour le ckeck boxe (on/off selon le cas) masi si je recommence l'operation.
    saisie + submit
    la check boxe reste invarablement 'checked'

    JSP:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    <html:hidden property="exclureReservees"/>
                    <% String onclick="fillCheckBoxField('exclureReserveesProperty','exclureReservees');"; %>
                    <html:checkbox property="exclureReserveesProperty" onclick="<%=onclick%>"/>
    Le script :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    function fillCheckBoxField(idCheckBoxField, idPropertyField){
    	var propertyField = document.getElementById(idPropertyField);
    	var checkboxField = document.getElementById(idCheckBoxField);
    	if (checkboxField.checked == true){
    		propertyField.value ='true';
    	} else {
    		propertyField.value ='false';
    	}
    }
    Je n'ai pas d'action (juste le forward basic de struts, j'aimerais savoir pourquoi le cham hidden suis bien les action de la check boxe et la check boxe elle meme reapparait toujours cochée o_O

  2. #2
    Membre confirmé
    Profil pro
    Inscrit en
    Juin 2004
    Messages
    228
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2004
    Messages : 228
    Par défaut En plu ssimple
    Encore moi, j'ai fait quelque modifs mais ça marche toujours pas comme je le veut.

    JSP:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <html:checkbox property="exclureReservees"/>
    Juste ça..

    Le formulaire se rappel lui meme quand je fait un submit

    Je fait un bean:write de exclureReservees, quand je coche et submit la valeure de exclureReservees est on. la paeg est réaffichée avec la case cochee.
    Je decoche et je re submit, la page est réaffichée mais le bean:write affiche toujours on et le cache et de nouveau cochée :'(

    J'ai testé avec ce code dans l'action:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    HttpSession session = request.getSession();
    OccupationModulesForm bean =  (OccupationModulesForm) session.getAttribute(FormConstants.OCCUPATION_DES_MODULES_FORM);
     
        if(request.getParameter("exclureReservees")==null)
    		  { 
    			  bean.setExclureReservees("off");
    		  }
    Mais ça ne marche pas beacoup mieux...
    Un peu d'aide serait le bienvenue, je cherche toujours :p

    Je comprends pas pourquoi quad je resubmit le formulaire la valeur de setExclureReservees ne chaneg pas, il ne passe meme pas a null.

  3. #3
    Membre chevronné


    Profil pro
    Inscrit en
    Octobre 2003
    Messages
    7 855
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2003
    Messages : 7 855
    Par défaut
    Bonjour,

    as-tu codé la méthode reset dans ton ActionForm ?

    Eric

  4. #4
    Membre confirmé
    Profil pro
    Inscrit en
    Juin 2004
    Messages
    228
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2004
    Messages : 228
    Par défaut ^
    Je doit dire que non.
    Vue que tu pose la question je suppose qu'il faut le faire, masi pourquoi ?
    Le formulaire est "reseté" avant d'etre réafficher ?

    Humm et une methode reset qui crée un nouveau bean o_O
    Bon en attendant je vais voir ce que ça donne avec un reset ^^

    Et qui va l'appeler cette methode ?

    PS: au cas ou ça ne ce verrait pas je commence avec jsp :p, alors les questions bateau vont fuser.

    [EDIT]
    Bon j'ai rajouter une methode reset
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    	  public ActionForward reset (ActionMapping mapping, ActionForm form, HttpServletRequest request, HttpServletResponse response) throws Exception {
    		  	HttpSession session = request.getSession();
    	        session.setAttribute(FormConstants.OCCUPATION_DES_MODULES_FORM, new OccupationModulesForm());
    	        return mapping.findForward(NavigationConstants.INIT);
    	    }
    Ba pas mieux evidement personne ne l'appel cette methode...
    Mais je veux pas faire un reset de mon formn je veux que quand je change les valeurs et que je rappel la page tous les champs soient correctent
    Les champs text sont ok le case a cohée reste cochéé tout le temps si je l acoche une premiere fois.
    J'ai l'impression que la variable asscociée (dasn le bean donc) n'est pas changée si la case passe de non cochée à cochée

  5. #5
    Membre chevronné


    Profil pro
    Inscrit en
    Octobre 2003
    Messages
    7 855
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2003
    Messages : 7 855
    Par défaut
    Je parlais de la méthode reset de l'ActionForm.
    Le problème avec les checkbox, c'est que quand elle est décochée il n'y a rien qui est envoyé lors du submit. Il faut donc remettre systématiquement la valeur correspondante à la valeur décochée. Sinon elle apparaîtra toujours cochée dans ton formulaire Struts.

  6. #6
    Membre confirmé
    Profil pro
    Inscrit en
    Juin 2004
    Messages
    228
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2004
    Messages : 228
    Par défaut hmm
    Je vais regarder ce ce cote la alors.
    Masi j'ai toujours la meme question qui va appeler cette methode ? et quand ?
    L'actionform est bien le bean si je me trompe pas (je sais suis un boulet )
    Donc si je code un reset dasn mon bean il est appelé quand ?
    A chque rechargement de la page ? ce qui fait que pour garder les champs d'un affichage a l'autre il faut faire un reset partiel en gros ?
    Je vais tester des trucs en reviendrais pour vous donner mes avancées :p
    Merci pour les infos, et les precision a venir ^^

  7. #7
    Membre chevronné


    Profil pro
    Inscrit en
    Octobre 2003
    Messages
    7 855
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2003
    Messages : 7 855
    Par défaut
    Bonjour,

    l'ActionForm est un objet qui te permet de mapper sous forme d'objet ton formulaire HTML. C'est Struts qui gère les ActionForms et qui appelle la méthode reset entre le moment où tu submittes ton formulaire et le moment où il récupère les données dans l'objet.

    Conclusion, comme au moment du submit tu as bien tout dans le formulaire (puisque c'est saisi), tu ne vas rien perdre

  8. #8
    Membre confirmé
    Profil pro
    Inscrit en
    Juin 2004
    Messages
    228
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2004
    Messages : 228
    Par défaut ^^
    Bonjour,

    A y'est ça marche comme je voulais ^^
    Merci

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

Discussions similaires

  1. Initialisation html:checkbox
    Par lapin_hobbit dans le forum Struts 1
    Réponses: 16
    Dernier message: 23/06/2011, 14h29
  2. Probleme initialisation checkBox
    Par xavpiaf dans le forum Flex
    Réponses: 6
    Dernier message: 02/06/2009, 10h42
  3. Initialiser une JList composée de checkbox
    Par Goupsy dans le forum Composants
    Réponses: 3
    Dernier message: 12/08/2008, 16h50
  4. [html:checkbox] initialisation et modification
    Par zybay dans le forum Struts 1
    Réponses: 7
    Dernier message: 12/06/2007, 12h00
  5. Réponses: 4
    Dernier message: 29/07/2005, 11h47

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