2016-04-05 136 views
0

我試圖用primefaces繪製輔助表格,並且我正面臨一些與<p:dataTable>有關的問題。Primefaces dataTable編輯單元格旁邊的單元格

場景

表應該如下:

----------------------------------------------------------------------------------------- 
|       |     Date and assistance (1)    |  | 
|   Name (1)  |-------------------------------------------------------| % | 
|       |(4)| | | | | | | | | | | | | |  | 
----------------------------------------------------------------------------------------- 
|Lastname, firstname (2) |(3)| | | | | | | | | | | | | | (5) | 
----------------------------------------------------------------------------------------- 
|...[more rows]...                  | 
----------------------------------------------------------------------------------------- 

(1)我有標題(不可編輯當然)。在(2)我有從數據庫帶來的人員數據,也是不可編輯的。

(3)我有一個可編輯的單元格,可用的值爲[P, A, L](Present,Absent,Late)。

(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>

我也嘗試了一些其他的組合,但我不能混合標題與可編輯單元格。

任何幫助或指導將不勝感激,我也打開其他選項。在此先感謝

+0

如果我正確理解你的問題,你不能做你想做的。抱歉。 – Kukeltje

+0

¿這種功能還有其他選擇嗎?也許是另一個組件或組件的組合,我都聽過。謝謝 –

回答

0

我不知道你是否仍然需要一個解決方案,但你可以做你需要把它放在可編輯標題(當然p:inplace是可選的,你可以刪除它,f:facet是你需要):

<p:column> 
    <f:facet name="header"> 
     <p:inplace> 
      <p:inputText value="#{bean.yourvalue}"/> 
     </p:inplace> 
    </f:facet> 
</p:column> 
相關問題