0

我遇到了与同一页面中多个复选框选择树的建模相关的问题。我正在做的是将每棵树包装在这样的数据网格中:

<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>

来自控制器的相关模型数据如下所示:

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

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

但是我无法获得模型的复选框选择。任何想法我做错了什么?我正在使用 PrimeFaces 3.5 和 javaee Web API 6。

谢谢你。

4

1 回答 1

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>

试试这段代码,如果问题仍然存在,请告诉我。我刚刚从数据网格中删除了“Column=1”属性并明确添加了该列。

于 2013-08-22T13:11:57.467 回答