簡體   English   中英

如何使 Primefaces selectonemenu 處於禁用狀態?

[英]How can I make Primefaces selectonemenu in disabled state?

我需要使用 p:selectonemenu 並禁用它,即它應該在發布期間提交,但它應該是只讀的。 請注意,我不想使用 disabled 屬性,因為這會阻止發布。

我在這個論壇上讀到這可以通過使用隱藏字段來實現,但是我不明白這是如何實現的。 如果有人能在這方面為我提供一些幫助,我將不勝感激。

<p:inputText id="cpr" value="#{customerbean.customer.cpr}">
    <p:ajax event="change" listener="#{customerbean.fetchCustomerDatafromCBS}" update="nationality address passportno name nationality dob address mailingaddress gender mobileno landlineno otherno email maritalstatus nochildren" immediate="true" >
         <f:param name="cprNumber" value="#{customerbean.customer.cpr}"/>
    </p:ajax>                 
    <f:validator validatorId="cprValidator" />                    
</p:inputText>   


<p:selectOneMenu id="gender" value="#{customerbean.customer.gender}" required="!#{customerbean.disabled}" requiredMessage="#{text['validation.error.required.gender']}" disabled="#{customerbean.disabled}">                      
    <f:selectItem itemLabel="Select One" itemValue="" noSelectionOption="true" />  
    <f:selectItem itemLabel="Male" itemValue="Male" />  
    <f:selectItem itemLabel="Female" itemValue="Female"  />  
</p:selectOneMenu>                

<p:inputText  type="hidden" value="#{customerbean.customer.gender}" />

我在這個論壇上讀到這可以通過使用隱藏字段來實現,但是我不明白這是如何實現的。

禁用<p:selectOneMenu> ,並創建一個<p:inputText type="hidden" value="#{bean.property}" /> value屬性必須與<p:selectOneMenu> 如有必要,請使用相同的轉換器。

這樣, <p:selectOneMenu>將對用戶禁用,但值將由隱藏的<p:inputText />提交。


請記住,隱藏輸入仍然是<p:inputText /> ,因此需要在其值更改時進行更新。 為其分配一個 ID,並確保將其添加到<p:ajax />update中。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM