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

JSF Java Discussion :

richfaces reRender hide


Sujet :

JSF Java

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Profil pro
    Inscrit en
    Juin 2007
    Messages
    46
    Détails du profil
    Informations personnelles :
    Âge : 46
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Juin 2007
    Messages : 46
    Par défaut richfaces reRender hide
    Bonjour,

    J'ai un <rich:dataTable> qui contient 2 <rich:subTable> :

    Le premier <rich:subTable> contient dans sa première colonne un a4j:commandLink.

    Je voulais que par defaut le 2ème subtable soit caché et quand je clique sur le lien, le 2ème subtable s'affiche et disparaisse comme dans "View Source " et "Hide Source" mais sans utiliser un panel:
    http://livedemo.exadel.com/richfaces...Link&tab=usage

    Par exemple, j'ai une ligne qui contient les informations concernant une personne : nom, prénom,...
    Je veux que quand je clique sur le nom, un sous tableau s'ouvre. Quand je reclique ce tableau se ferme.


    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
    <rich:dataTable>
      <rich:subTable>
        <rich:column>
          	<a4j:commandLink reRender="subtable2" action="#{MonBean.makeVisible}">
                 <h:outputText id="nat" value="cliquer ici"/>
            </a4j:commandLink>
        <rich:column>	
      </rich:subTable>
     
     
      <rich:subTable id ="subtable2" rendered="#{MonBean.isVisible}>
         .........
         ...........
      </rich:subTable>
    </rich:dataTable>
    Ma fonction makeVisible change la valeur du boolean isVisible de true à false et inversement à chaque fois que je clique.

    Donc à l'ouverture de ma page, le 2ème subtable n'est pas affiché. Mais quand je clique sur le lien, la valeur de isVisible change à true mais le tableau ne s'affiche pas.

  2. #2
    Rédacteur

    Profil pro
    Inscrit en
    Juin 2003
    Messages
    4 184
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2003
    Messages : 4 184
    Par défaut
    esasye de faire le reRender sur toute la table,
    sinon tu peux ne pas ajouter une action coté java pour changer la valeur du boolean, tu peux le faire avec:


    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    <a4j:actionparam  name="show_sub_table" value="#{!list.displaySub}"
    assignTo="#{list.displaySub}">
    </a4j:actionparam>

  3. #3
    Membre averti
    Profil pro
    Inscrit en
    Juin 2007
    Messages
    46
    Détails du profil
    Informations personnelles :
    Âge : 46
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Juin 2007
    Messages : 46
    Par défaut actionparam
    ça y est. ça marche avec les deux méthodes. Merci

    Mais j'ai une autre question : à chaque fois que je clique sur le lien, le calcul se refait côté serveur (le calcul des données de la sous-table 2).

    Est ce qu'il y a une méthode pour éviter de faire l'appel au serveur à chaque fois puisque les données ne changent pas souvent.


    Bonne année pour tout le monde

  4. #4
    Rédacteur

    Profil pro
    Inscrit en
    Juin 2003
    Messages
    4 184
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2003
    Messages : 4 184
    Par défaut
    Citation Envoyé par bassbaki Voir le message
    ça y est. ça marche avec les deux méthodes. Merci

    Est ce qu'il y a une méthode pour éviter de faire l'appel au serveur à chaque fois puisque les données ne changent pas souvent.
    ça depend comment tu calcule les valeurs de la subTable, si c'est dans un getter, il faut éviter ..car le getter est appelé plusieurs fois.
    sinon tu peux conditionner ce calcul pour qu'il soit fait que si ya changement..

    Et Bonne année à toi aussi

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

Discussions similaires

  1. RichFaces Rerender Div
    Par Ho(c)ine. dans le forum JSF
    Réponses: 4
    Dernier message: 23/06/2009, 15h29
  2. [RichFaces] reRender panelGrid
    Par Jexou dans le forum JSF
    Réponses: 16
    Dernier message: 08/01/2009, 16h05
  3. Richfaces rerender tableau
    Par citizen_walker dans le forum JSF
    Réponses: 1
    Dernier message: 08/10/2008, 18h19
  4. [richfaces] reRender en javascript
    Par monstor dans le forum JSF
    Réponses: 2
    Dernier message: 29/05/2008, 12h31
  5. [RichFaces] Rerender des composants coté java
    Par Mediii dans le forum JSF
    Réponses: 10
    Dernier message: 12/12/2007, 12h15

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