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 :

[Javascript] Checkbox et cache-cache tableau


Sujet :

Struts 1 Java

  1. #1
    Membre du Club
    Profil pro
    Étudiant
    Inscrit en
    Juin 2007
    Messages
    90
    Détails du profil
    Informations personnelles :
    Âge : 37
    Localisation : France, Charente Maritime (Poitou Charente)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Juin 2007
    Messages : 90
    Points : 48
    Points
    48
    Par défaut [Javascript] Checkbox et cache-cache tableau
    Salut, c'est à nouveau moi et mes problèmes :

    Bon cette fois-ci, s'en est un très simple mais très lourd puisque ... ça ne marche pas.

    En fait, voila le topo : j'ai une checkbox. Je veux quand elle est cochée, qu'un tableau s'affiche, et quand elle est décochée, qu'il disparaisse, et ainsi de suite ...

    Simple non ? Bon alors voici ma page :

    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
    <table cellspacing="6" >
              <tr>
                <td><input type="checkbox" onclick="ShowTab()" id="chk1"></td>
                <td>Toutes les demandes</td>
              </tr>
           </table>
           <table cellspacing="6" >
              <tr>
               <td>Uniquement la(les) demande(s) ...</td>
              </tr>
               <tr>
                <table class="tableau_recherche" align="center" id="tab2">
                  <tr>
                    ...
                   </tr>
                  </table>
    Et voici le code javascript :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    function ShowTab()
    {
    if(document.getElementById("chk1").value != null)
      {
       document.getElementById("tab2").style.display = 'none';
      }
    if(document.getElementById("chk1").value = null)
      {
       document.getElementById("tab2").style.display = 'block';
      }
    }
    En fait, lorsque je coche la checkbox, le tableau disparait donc c super, mais lorsque je la décoche, il reste sur place ... donc bon c'est quand même relativement embêtant

    Une petite idée ?

  2. #2
    Membre régulier
    Profil pro
    Inscrit en
    Juin 2007
    Messages
    100
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2007
    Messages : 100
    Points : 90
    Points
    90
    Par défaut
    Remplace :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    if(document.getElementById("chk1").value = null)
    Par :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    if(document.getElementById("chk1").value == null)

  3. #3
    Membre du Club
    Profil pro
    Étudiant
    Inscrit en
    Juin 2007
    Messages
    90
    Détails du profil
    Informations personnelles :
    Âge : 37
    Localisation : France, Charente Maritime (Poitou Charente)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Juin 2007
    Messages : 90
    Points : 48
    Points
    48
    Par défaut
    Même problème, je coche : ça disparait, je décoche ... ça réapparait pas !

  4. #4
    Modérateur
    Avatar de OButterlin
    Homme Profil pro
    Inscrit en
    Novembre 2006
    Messages
    7 313
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Novembre 2006
    Messages : 7 313
    Points : 9 529
    Points
    9 529
    Billets dans le blog
    1
    Par défaut
    Tu ne fais pas le bon test : il faut tester "checked" pas value
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    if ( document.getElementById("chk1").checked ) document.getElementById("tab2").style.display = "block";
    else document.getElementById("tab2").style.display = "none";
    A+

  5. #5
    Membre du Club
    Profil pro
    Étudiant
    Inscrit en
    Juin 2007
    Messages
    90
    Détails du profil
    Informations personnelles :
    Âge : 37
    Localisation : France, Charente Maritime (Poitou Charente)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Juin 2007
    Messages : 90
    Points : 48
    Points
    48
    Par défaut
    ...

    ça paraissait si évident que je n'y avait pas pensé ...

    MERCI !

  6. #6
    Modérateur
    Avatar de OButterlin
    Homme Profil pro
    Inscrit en
    Novembre 2006
    Messages
    7 313
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Novembre 2006
    Messages : 7 313
    Points : 9 529
    Points
    9 529
    Billets dans le blog
    1
    Par défaut
    C'est souvent comme ça... plus tu l'as sous les yeux... moins tu le vois

  7. #7
    Membre du Club
    Profil pro
    Étudiant
    Inscrit en
    Juin 2007
    Messages
    90
    Détails du profil
    Informations personnelles :
    Âge : 37
    Localisation : France, Charente Maritime (Poitou Charente)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Juin 2007
    Messages : 90
    Points : 48
    Points
    48
    Par défaut
    Arf ! Alors là j'ai un autre problème :

    En fait, dans l'action qui suit ma jsp, je dois executer un traitement en fonction de la valeur de la checkBox.

    J'ai donc remplacé mon
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <input type="checkbox" onclick="ShowTab()" id="chk1">
    par
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <html:checkbox property="allDemandes" onclick="ShowTab()" name="resultatsDemandesValidationActionForm"/>
    Le problème est que je n'arrive plus à le récupérer dans mon javascript, même avec un document.getElementsByName, puisque le nom correspond à celui du formulaire ...

    Un petit coup de main ?

  8. #8
    Modérateur
    Avatar de OButterlin
    Homme Profil pro
    Inscrit en
    Novembre 2006
    Messages
    7 313
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Novembre 2006
    Messages : 7 313
    Points : 9 529
    Points
    9 529
    Billets dans le blog
    1
    Par défaut
    L'attribut styleId du taglib checkbox = id d'une balise <input type="checkbox">

    A+

  9. #9
    Membre du Club
    Profil pro
    Étudiant
    Inscrit en
    Juin 2007
    Messages
    90
    Détails du profil
    Informations personnelles :
    Âge : 37
    Localisation : France, Charente Maritime (Poitou Charente)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Juin 2007
    Messages : 90
    Points : 48
    Points
    48
    Par défaut
    Euuuuh ...

    Tu peux préciser ta solution stp ?

  10. #10
    Modérateur
    Avatar de OButterlin
    Homme Profil pro
    Inscrit en
    Novembre 2006
    Messages
    7 313
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Novembre 2006
    Messages : 7 313
    Points : 9 529
    Points
    9 529
    Billets dans le blog
    1
    Par défaut
    Dans ton exemple initial, tu avais :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    <input type="checkbox" onclick="ShowTab()" id="chk1">
    l'équivalent avec le taglib serait :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    <html:checkbox property="allDemandes" onclick="ShowTab()" styleId="chk1">
    Maintenant si ton problème est lié à la valeur lue par le contrôleur, je ne peux pas te répondre, je ne vois pas d'attribut value="1" (ou autre valeur) dans ta balise checkbox.
    D'autre part, une valeur de checkbox n'est renvoyée que si la checkbox est cochée, donc, il faut prévoir une initialisation (dans reset avec ActionForm) ou un test à != null...

    C'est plus clair ?

  11. #11
    Membre du Club
    Profil pro
    Étudiant
    Inscrit en
    Juin 2007
    Messages
    90
    Détails du profil
    Informations personnelles :
    Âge : 37
    Localisation : France, Charente Maritime (Poitou Charente)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Juin 2007
    Messages : 90
    Points : 48
    Points
    48
    Par défaut
    Ok super !

    Une dernière petite question et après j'arrête :

    Je veux donner par défaut la valeur 'none' à mon tableau dès l'ouverture de la page ...

    Je fais ça comment ?

  12. #12
    Modérateur
    Avatar de OButterlin
    Homme Profil pro
    Inscrit en
    Novembre 2006
    Messages
    7 313
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Novembre 2006
    Messages : 7 313
    Points : 9 529
    Points
    9 529
    Billets dans le blog
    1
    Par défaut
    comme ça
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    <table style="display:none" ...>
    ...
    </table>
    A+

  13. #13
    Membre du Club
    Profil pro
    Étudiant
    Inscrit en
    Juin 2007
    Messages
    90
    Détails du profil
    Informations personnelles :
    Âge : 37
    Localisation : France, Charente Maritime (Poitou Charente)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Juin 2007
    Messages : 90
    Points : 48
    Points
    48
    Par défaut
    Sa pète.

    Merci OButterlin

  14. #14
    Modérateur
    Avatar de OButterlin
    Homme Profil pro
    Inscrit en
    Novembre 2006
    Messages
    7 313
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Novembre 2006
    Messages : 7 313
    Points : 9 529
    Points
    9 529
    Billets dans le blog
    1
    Par défaut
    De rien, n'oublie pas

    Bonne continuation

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

Discussions similaires

  1. Réponses: 0
    Dernier message: 12/05/2015, 09h57
  2. Réponses: 7
    Dernier message: 14/05/2012, 14h11
  3. Ecriture cachée dans tableau
    Par jardalmont dans le forum Word
    Réponses: 2
    Dernier message: 14/07/2011, 11h44
  4. Un checkbox qui affiche/cache un clip
    Par nicolas2603 dans le forum Flash
    Réponses: 3
    Dernier message: 27/06/2007, 17h45
  5. Réponses: 11
    Dernier message: 09/11/2005, 13h59

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