我想知道如何更新PrimeFaces Datatable行。这是我理解我的数据照片:
![1]:http://i.stack.imgur.com/N1jGz.png
我想为每一行选择他自己的状态,然后点击Save States按钮保存这些值。
这是我的xhtml页面代码:
<p:panel header="List Of Players For: #gameMB.selectedGame.teamCompetitionByGuestTeam}">
<p:dataTable var="gam" value="#{gamePlayerMB.listGamePlayerGuest}">
<p:column headerText="Name Lastname">
<h:outputText value="#{gam.playerName}/>
</p:column>
<p:column>
<p:selectOneRadio value="#{gam.state}">
<f:selectItem itemLabel="Titulaire" itemValue="Titulaire" />
<f:selectItem itemLabel="Remplaçant" itemValue="Remplaçant" />
<f:selectItem itemLabel="Blesse" itemValue="Blesse" />
<f:selectItem itemLabel="Non retenu" itemValue="Non retenu" />
</p:selectOneRadio>
</p:column>
</p:dataTable>
<f:facet name="footer">
<p:commandButton value="Save States"
action="#{gamePlayerMB.testRadioGuest}" />
</f:facet>
</p:panel>
提前致谢。
答案 0 :(得分:1)
h:outputText
作为要渲染的组件
球员的状态(Titulare,Blessé,......)editable="true"
中使用带有p:selectOneMenu
的 primefaces数据表 p:cellEditor
来呈现可用选项列表。答案 1 :(得分:0)
如果我理解你的话,你只想创建带编辑功能的表格。要解决这个问题,只需将表格和按钮传递给表格。
<h:form>
<p:dataTable var="gam" value="#{gamePlayerMB.listGamePlayerGuest}">
...
</p:dataTable>
<p:commandButton value="Save States" action="#{gamePlayerMB.testRadioGuest}" />
</h:form>
在这种情况下,在“保存”按钮上单击所有表单将被发送到服务器(随您所有更改)。您的testRadioGuest方法可能看起来像这样
private void testRadioGuest(){
for(Player player: listGamePlayerGuest){
System.out.println(player);
}
}
必须保存所有状态更改。