我正在为我的应用程序使用 JSF2.0、rich faces 4.2.2、tomcat 6.0.35。在其中一页上,有两个rich:extendedDataTable 组件,分别用于“tablelist”和“tablecontent”。单击 tablelist 数据表的行时,将进行 ajax 调用并呈现 tablecontent 数据表。问题是呈现的数据表是不可编辑的,即我无法选择行或执行其他操作,如单击等。
下面是代码:
<h:panelGrid columns="2" cellspacing="0" >
<rich:extendedDataTable value="#{tableBean.tableList}" var="o" id="table1" iterationStatusVar="it" style="width:200px;height:400px;" onrowclick="select('#{o.name}');"
<f:facet name="header">
<h:outputText value="Table List" style="align:left;"></h:outputText>
</f:facet>
<rich:column width="199px" id="tablist" >
<h:outputText value="#{o.name}"/>
</rich:column>
</rich:extendedDataTable>
<rich:extendedDataTable value="#{tableBean.rows}" var="r" id="tableHum" iterationStatusVar="it" style="width:400px;height:400px;" >
<f:facet name="header">
<h:outputText value="Table content" style="align:left;"></h:outputText>
</f:facet>
<c:forEach items="#{tableBean.columns}" var="c" varStatus="i">
<rich:column >
<f:facet name="header">
<h:outputText value="#{c}" />
</f:facet>
<h:outputText value="#{r[i.index]}" style="align:center;"/>
</rich:column>
</c:forEach>
</rich:extendedDataTable>
</h:panelGrid>
<a4j:jsFunction name="select" action="#{tableBean.getTableData}" render="tableHum" execute="@this" status="tableDataStatus" >
<a4j:param name="param1" assignTo="#{tableBean.tableName}" />
</a4j:jsFunction>
</h:form>
</h:body>
有人有想法吗?