4
這裏是我的代碼無法正常工作:如何使PrimeFaces中的p:cellEditor有條件?
...
<p:column sortBy="#{invoice.customerId}" id="customerId">
<f:facet name="header"><h:outputText value="Customer ID"/></f:facet>
<f:facet name="output" rendered="#{!editUIBean.isEditable('customerId')}">
<h:outputText value="#{invoice.customerId}"/>
</f:facet>
<p:cellEditor rendered="#{editUIBean.isEditable('customerId')}">
<f:facet name="output">
<h:outputText value="#{invoice.customerId}"/>
</f:facet>
<f:facet name="input">
<h:inputText value="#{invoice.customerId}"/>
</f:facet>
</p:cellEditor>
</p:column>
...
所以我試圖做的事:用戶首先選一個選項,該選項決定了哪些記錄可編輯,只顯示可編輯該記錄選項。對於任何給定的選項,只有那些記錄中的某些列是可編輯的。如果給定選項列可編輯,則isEditable(columnName)方法返回true,如果列不可編輯則返回false。我想要做的是,當用戶單擊編輯記錄時,可編輯字段顯示輸入字段,然後不可編輯字段顯示其值。使用上面的代碼,當列不可編輯時,在單擊編輯之前和之後,該值不會顯示。當字段可編輯時,將顯示該值,並且當您單擊編輯時,該值將被包含該值的輸入字段替換。所以我的例子工作,除了當該字段不可編輯時,該值完全隱藏。我希望在不編輯和編輯時顯示不可編輯的值,我只是不希望它們在編輯期間可編輯。
** rendered =「#{editUIBean.isEditable('customerId')}」**,如何獲得'customerId'? – 2013-05-02 01:18:59