【发布时间】:2016-07-25 14:53:58
【问题描述】:
我正在尝试使用 primefaces 绘制辅助表,但我在使用 <p:dataTable> 时遇到了一些麻烦。
场景
表格应该如下:
-----------------------------------------------------------------------------------------
| | Date and assistance (1) | |
| Name (1) |-------------------------------------------------------| % |
| |(4)| | | | | | | | | | | | | | |
-----------------------------------------------------------------------------------------
|Lastname, firstname (2) |(3)| | | | | | | | | | | | | | (5) |
-----------------------------------------------------------------------------------------
|...[more rows]... |
-----------------------------------------------------------------------------------------
在(1) 我有标题(当然不可编辑)。在(2) 我有从数据库中获取的人员数据,也无法编辑。
在(3) 中,我有一个可编辑的单元格,其中包含可能值[P, A, L](出席、缺席、迟到)的下拉列表。
在(4) 我需要插入援助日期(不一定是当前日期)。
最后,在(5)我有当前的援助百分比,这是一个计算字段。
问题
我无法使 (4) 可编辑,例如带有<p:inputMask pattern="dd/MM"> 标签
尝试失败
我尝试了<p:dataTable> 的分组属性,类似于:
<!-- Assist class has the properties char value, Person person and Date date -->
<p:dataTable var="assist" value="#{assistBean.lstAssist}"
editable="true" editMode="cell">
<p:columnGroup type="header">
<!-- The "headers" properly said -->
<p:row>
<p:column rowspan="2" headerText="Name"/>
<p:column colspan="#{someBean.colAmount}" rowspan="1" headerText="Date and assistance"/>
</p:row>
<!-- The editable dates -->
<p:row>
<p:column>
<p:cellEditor>
<f:facet name="output">
<h:outputText value="#{assist.date}">
<f:convertDateTime pattern="dd/MM"/>
</h:outputText>
</f:facet>
<f:facet name="input">
<p:inputMask value="#{assist.date}" style="width:96%" mask="99/99"/>
</f:facet>
</p:cellEditor>
</p:column>
</p:row>
</p:columnGroup>
<p:column>...
... The rest of the table
</p:column>
</p:dataTable>
这不起作用,因为<p:columnGroup type="header"> 中的每个字段都不会呈现<input>。
我也尝试了一些其他组合,但我无法将标题与可编辑单元格混合。
任何帮助或指导将不胜感激,我也愿意接受其他选择。提前致谢
【问题讨论】:
-
如果我正确理解了您的问题,您将无法为所欲为。对不起。
-
¿这种功能还有其他选择吗?也许是另一个组件或组件的组合,我全神贯注。谢谢
标签: jsf-2 primefaces datatable