扩展数据表动态结果丰富的面孔

时间:2013-03-23 00:47:52

标签: jsf-2 richfaces

<h:form>


<h:panelGrid columns="2" columnClasses="top , top">
    <rich:extendedDataTable
        value="#{contentBean.questions}" var="cap" id="table"
        selectionMode="single"
        tableState="#{contentBean.qtablestate}"
        selection="#{contentBean.s}">
        <rich:column  id="col_1">
            <f:facet name="header">
                <h:outputText value="Quistioneer" id="flag"/>
            </f:facet>
            <h:outputText value="#{cap.QUserid.fname}" id="cap_state_flag"/>
        </rich:column>
        <rich:column id="col_2" width="170px">
            <f:facet name="header">
                <h:outputText value="Question" id="state_name"/>
            </f:facet>
            <h:outputText value="#{cap.questionValue}" id="cap_state"/>
        </rich:column>
        <rich:column id="col_3" width="170px">
            <f:facet name="header">
                <h:outputText value="Date asked" id="state_capital"/>
            </f:facet>
            <h:outputText value="#{cap.QDate}" id="cap_name"/>
        </rich:column>

        <a4j:ajax execute="@form" event="selectionchange" listener="#{contentBean.onclick(cap.qid)}" 
                  render="selectiontable"/>
    </rich:extendedDataTable>
    <h:panelGroup layout="block" style="width:400px">
         <rich:panel>
            <f:facet name="header">
                <h:outputText value="Currently selected rows:" />
            </f:facet>
            <rich:dataTable value="#{contentBean.ansList}"
                var="sel" id="selectiontable">
                <rich:column>
                    <h:outputText value="#{sel.AUserid.fname}" />
                </rich:column>
                <rich:column>
                    <h:outputText value="#{sel.ansValue}" />
                </rich:column>
                <rich:column>
                    <h:outputText value="#{sel.ansDate}" />
                </rich:column>
            </rich:dataTable>
        </rich:panel>
    </h:panelGroup>
</h:panelGrid>

  </h:form>

我想通过从扩展数据表中选择的列发送cap.userid(列表的数据变量)到支持bean,从数据表中显示所选面板上的结果(我需要调用方法onclick到获取备份会话中的表行以显示在第二个面板上) 我的问题是listner在select上调用函数但我无法发送该行数据 请帮助我怎么做

1 个答案:

答案 0 :(得分:1)

您可以从表格选择中获取选择:

 <rich:extendedDataTable
    ...
    selection="#{contentBean.selection}">

并在后端接受。

for(Object objId:getSelection()){

objId将是您数据的ID。