我需要使用primefaces在jsf中创建一个数据表,其中我需要一行,其中一列包含带有一个按钮的静态数据。当我单击此按钮时,其他列(在同一行内)应显示一些输入文本应从数据库中填充带有标签和数据的字段。这意味着如果有两条记录,则该行中的列应根据记录数跨越到行数中。这意味着一列将是静态的,另一列在该行中应该动态跨越,并且应该在行内的列中添加一些组件。请帮助我如何做到这一点?
问问题
810 次
1 回答
0
嗨,我在某处找到了一些用于动态创建行的示例代码,您可以根据需要进一步嵌套它。
<p:column>
<f:facet name="header">
<h:outputLabel value="Field 2" />
</f:facet>
<h:outputLabel value="#{myTableVar.Field2}" />
</p:column>
<f:facet name="footer">
<p:commandButton value="New" action="#{myBean.prepareForInsert}" update=":myForm:myPanel"/>
</f:facet>
</p:dataTable>
<h:panelGrid id="myPanel" columns="2" >
<h:outputLabel value="Field 1"/>
<p:inputText id="fld1" value="#{myBean.newRec.field1}" />
<h:outputLabel value="Field 2"/>
<p:inputText id="fld2" value="#{myBean.newRec.field2}" />
<p:commandButton action="#{myBean.createAction}" value="Submit" update="myGrowl myTable" />
</h:panelGrid>
当点击 New 按钮时,在 myBean 的 prepareForInsert 例程中创建一个 newRec 的 emty 实例。这样 myPanel 在字段中填充了空白。在提交时,将 newRec 添加到 list_Recs 中,由于 myTable 上的更新,新记录显示在数据表中。希望这可以帮助。
于 2012-12-07T06:55:18.420 回答