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][ModalPanel] Envoie de données


Sujet :

JSF Java

  1. #1
    Membre averti
    Profil pro
    Étudiant
    Inscrit en
    Avril 2008
    Messages
    43
    Détails du profil
    Informations personnelles :
    Âge : 37
    Localisation : France, Territoire de Belfort (Franche Comté)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Avril 2008
    Messages : 43
    Par défaut [Richfaces][ModalPanel] Envoie de données
    Bonjour,

    j'essaye d'utiliser le composant modalPanel de Richfaces sur un tableau html, j'arrive à ouvrir un modalPanel lorsque je clic sur une case du tableau mais ce que je voudrais faire c'est envoyer des données au ModalPanel pour qu'il les affiche et pour l'instant je n'ai rien trouvé.

    Pour utiliser le modalPanel j'utilise
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    <td onclick="#{rich:component('modalPanel_ajout')}.show()"></td>
    Merci

  2. #2
    Membre averti
    Profil pro
    Étudiant
    Inscrit en
    Avril 2008
    Messages
    43
    Détails du profil
    Informations personnelles :
    Âge : 37
    Localisation : France, Territoire de Belfort (Franche Comté)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Avril 2008
    Messages : 43
    Par défaut
    Je me suis sûrement mal exprimé, les données que je veux afficher sont déjà dans la balise TD.

    Par exemple si j'ai une balise

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    <td onclick="#{rich:component('modalPanel_ajout')}.show()">TOTO</td>
    comment afficher toto dans mon modalPanel ?

  3. #3
    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
    si la valeur est dans un bean il suffit d'utiliser

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <h:outputText value="#{bean.attribute}"/>

  4. #4
    Membre averti
    Profil pro
    Étudiant
    Inscrit en
    Avril 2008
    Messages
    43
    Détails du profil
    Informations personnelles :
    Âge : 37
    Localisation : France, Territoire de Belfort (Franche Comté)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Avril 2008
    Messages : 43
    Par défaut
    Bah en faite les valeurs sont en effet dans un bean, mais c'est une liste que j'envoie ,donc je ne connais pas le nombre de cases et une case correspond à une valeur en particulier.

    je vois pas du tout comment récupérer la bonne valeur selon la case.

  5. #5
    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
    regarde la comment récupérer la ligne courante d'un tableau..
    utilise h:dataTable ou rich:dataTable..

  6. #6
    Membre averti
    Profil pro
    Étudiant
    Inscrit en
    Avril 2008
    Messages
    43
    Détails du profil
    Informations personnelles :
    Âge : 37
    Localisation : France, Territoire de Belfort (Franche Comté)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Avril 2008
    Messages : 43
    Par défaut
    Je suis obliger d'utiliser un tableau en dure <table><tr><td> donc je ne sais pas si c'est possible :/

  7. #7
    Membre averti
    Profil pro
    Étudiant
    Inscrit en
    Avril 2008
    Messages
    43
    Détails du profil
    Informations personnelles :
    Âge : 37
    Localisation : France, Territoire de Belfort (Franche Comté)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Avril 2008
    Messages : 43
    Par défaut
    Voilà donc j'ai résolu en partie mon problème, en appelant le modelPanel comme ceci,

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <td onclick="Richfaces.showModalPanel('modalPanel_ajout',{width:400, top:200, param1:${cours}})"></td>
    mais par contre comment faire pour afficher param 1 entre les balises modalPanel, j'ai essayer plein de syntaxe mais aucune ne marche, sachant que je ne peux pas appeler ${cours} directement dans mon modalPanel puisqu'il est différent selon la case.

    merqui

  8. #8
    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
    dans la modalPanel:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
    <a4j:form>
    <a4j:jsFunction name="updateParams" reRender="param">
    <a4j:actionparam name="param1" assignTo="#{bean.param1}" />
    </a4j:jsFunction>
    </a4j:form>

  9. #9
    Membre averti
    Profil pro
    Étudiant
    Inscrit en
    Avril 2008
    Messages
    43
    Détails du profil
    Informations personnelles :
    Âge : 37
    Localisation : France, Territoire de Belfort (Franche Comté)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Avril 2008
    Messages : 43
    Par défaut
    Merci de m'aider, mais je ne comprend pas comment utiliser ce code

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
    <a4j:form>
    <a4j:jsFunction name="updateParams" reRender="param">
    <a4j:actionparam name="param1" assignTo="#{bean.param1}" />
    </a4j:jsFunction>
    </a4j:form>
    Je ne comprend pas ce qu'est "param", est ce l'identifiant du composant qui contiendra l'affichage de param1 ?
    De plus, faut il que j'appel la fonction updateParams.?
    si oui à quel moment et où? -> Dans la balise modalPanel ou dans un outPuttext par exemple ?

    Merci

  10. #10
    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
    en effet, l'explication n'était pas complète

    tu dois appeler la fonction dans la modalPanel comme ça:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    onshow="updateParams(event.parameters.param1);

  11. #11
    Membre averti
    Profil pro
    Étudiant
    Inscrit en
    Avril 2008
    Messages
    43
    Détails du profil
    Informations personnelles :
    Âge : 37
    Localisation : France, Territoire de Belfort (Franche Comté)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Avril 2008
    Messages : 43
    Par défaut
    Merci, on avance, mais doit y avoir un problème quelque part car ça ne marche pas voilà mon code

    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
     
     
    <r:modalPanel id="modalPanel_ajout" **** onshow="updateParams(event.parameters.param1);" >
     
            *********
     
    	<r:panel style="border:0;height:100px">
    		<a:form>
    		<a:jsFunction name="updateParams" reRender="param">
    		<a:actionparam name="param1" assignTo="#{planningController.param1}"/>
    		</a:jsFunction>
    		</a:form>
    		<h:outputText value="#{planningController.param1}" />
    	</r:panel>
     
    </r:modalPanel>
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    <td onclick="Richfaces.showModalPanel('modalPanel_ajout',{width:400, top:200, param1:${coursVide}})"></td>
    Est ce que la syntaxe est bonne, par contre je ne comprend toujours pas à quoi sert le reRender="param" puisqu'il n'y a rien qui se nome param.

    Merci encore

  12. #12
    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
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    <a:form>
    		<a:jsFunction name="updateParams" reRender="param">
    		<a:actionparam name="param1" assignTo="#{planningController.param1}"/>
    		</a:jsFunction>
    		</a:form>
    à placer en dehors de la modalPanel..
    la modalPanel doit avoir son propre form et ne doit pas etre incluse dans un form générique.

  13. #13
    Membre averti
    Profil pro
    Étudiant
    Inscrit en
    Avril 2008
    Messages
    43
    Détails du profil
    Informations personnelles :
    Âge : 37
    Localisation : France, Territoire de Belfort (Franche Comté)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Avril 2008
    Messages : 43
    Par défaut
    okay okay

    mon code est comme ça mais ça ne marche toujours pas

    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
    19
     
     
    <a:form>
    		<a:jsFunction name="updateParams" reRender="param">
    		<a:actionparam name="param1" assignTo="#{planningController.param1}"/>
    		</a:jsFunction>
    </a:form>
     
     
    <r:modalPanel id="modalPanel_ajout" **** onshow="updateParams(event.parameters.param1);" >
     
            *********
     
            <a:form>
    		<h:outputText value="#{planningController.param1}" />
    	</a:form>
     
    </r:modalPanel>
    </a:form>
    Et à quoi sert le reRender="param" ^^ ?

  14. #14
    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
    c'est pour rafraichir la valeur d'un composant..
    pour ton cas tu peux faire:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     <h:form>
    		<h:outputText id="param" value="#{planningController.param1}" />
    	</h:form>

  15. #15
    Membre averti
    Profil pro
    Étudiant
    Inscrit en
    Avril 2008
    Messages
    43
    Détails du profil
    Informations personnelles :
    Âge : 37
    Localisation : France, Territoire de Belfort (Franche Comté)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Avril 2008
    Messages : 43
    Par défaut
    Bon bah normalement ça devrai marcher sauf que bah chez moi ça marche pas, alors j'ai tester un simple exemple celui de livedemo

    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
    19
    20
    21
     
        <a:form>
            <a:jsFunction name="updateName" reRender="showname">
                <a:actionparam name="param1" assignTo="#{planningController.param1}"  />                  
            </a:jsFunction>
        </a:form>
        <h:form>
         <table  width="400">
            <tbody>
            <tr>
                <td><span onmouseover="updateName('Alex')"  onmouseout="updateName('')">Alex</span></td>
                <td><span onmouseover="updateName('Jonh')"  onmouseout="updateName('')">Jonh</span></td>
                <td><span onmouseover="updateName('Roger')"  onmouseout="updateName('')">Roger</span></td>
            </tr>
            <r:spacer height="10" />
            <tr>
                <td colspan="3">Name: <b><h:outputText id="showname" value="#{planningController.param1}" /></b></td>
            </tr>
            </tbody>
        </table>
    </h:form>


    Et rien ne ce passe...je suis perdu...

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

Discussions similaires

  1. Réponses: 18
    Dernier message: 26/06/2008, 10h10
  2. socket : envois des données impossible
    Par thechief dans le forum Réseau
    Réponses: 16
    Dernier message: 18/03/2006, 19h28
  3. envoi de données sur un même port
    Par manaboko dans le forum Développement
    Réponses: 7
    Dernier message: 05/10/2005, 15h53
  4. [PHP-JS] Envoi de données sur une même page...
    Par dudux dans le forum Langage
    Réponses: 8
    Dernier message: 14/09/2005, 13h51
  5. [debutant]envoie de données
    Par miloux32 dans le forum XML/XSL et SOAP
    Réponses: 4
    Dernier message: 14/08/2003, 10h24

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