2013-08-22 6 views
0

J'ai un problème lié à la modélisation de plusieurs arbres de sélection de case à cocher dans la même page. Ce que je fais est enroulant chaque arbre dans un DataGrid comme ceci:Primefaces modélisant plusieurs arbres de sélection

<p:dataGrid value="#{evaluationReportController.questionGroups}" var="t" styleClass="top-aligned-grid-cells" columns="1" 
          style="margin-bottom: 40px;"> 
        <f:facet name="header">Va rugam sa bifati intrebarile</f:facet> 
        <p:panel header="#{t.description}"> 
         <p:tree id="question-tree" value="#{t}" var="node" style="width: 100%" 
           selectionMode="checkbox" selection="#{evaluationReportController.selectedQuestions[t]}"> 
          <p:treeNode> 
           <h:outputText value="#{node}" style="width: 120px"/> 
          </p:treeNode> 
         </p:tree>        
        </p:panel> 
       </p:dataGrid> 

Les données de modèle pertinent du contrôleur ressemble à ceci:

private Map<QuestionGroup, TreeNode[]> selectedQuestions; 
.... 
public Map<QuestionGroup, TreeNode[]> getSelectedQuestions() { 
    return selectedQuestions; 
} 

public void setSelectedQuestions(Map<QuestionGroup, TreeNode[]> selectedQuestions) { 
    this.selectedQuestions = selectedQuestions; 
} 

Cependant, je ne peux pas obtenir des sélections de cases à cocher au modèle. Des idées de ce que je fais mal? J'utilise PrimeFaces 3.5 et javaee web API 6.

Merci.

Répondre

0
<p:dataGrid value="#{evaluationReportController.questionGroups}" var="t" styleClass="top-aligned-grid-cells" 
         style="margin-bottom: 40px;"> 
       <f:facet name="header">Va rugam sa bifati intrebarile</f:facet> 
       <p:column> 
       <p:panel header="#{t.description}"> 
        <p:tree id="question-tree" value="#{t}" var="node" style="width: 100%" 
          selectionMode="checkbox" selection="#{evaluationReportController.selectedQuestions[t]}"> 
         <p:treeNode> 
          <h:outputText value="#{node}" style="width: 120px"/> 
         </p:treeNode> 
        </p:tree>        
       </p:panel> 
       </p:column> 
      </p:dataGrid> 

Essayez ce code et faites-moi savoir si le problème persiste. Je viens de supprimer l'attribut "Column = 1" de la grille de données et d'ajouter explicitement la colonne.

+0

Non, ne fonctionne toujours pas – user2492802

Questions connexes