2017-02-20 11 views
0

Primefaces(JSF)では、チェックボックスのリストがあります。 (リストのデータはDBから動的に出力されます)Primefaces - チェックボックスが選択されている場合、チェックボックスの下にテキストフィールドを動的に追加します。

ユーザがチェックボックスをオンにすると、チェックボックスの下にテキストフィールドを追加します。

どうすればいいですか、これはどのように行うことができますか?

HTML

<p:column> 
     <p:selectManyCheckbox id="resolutionPower" value="#{resBRRD_83_2_3_Bean.selectedResolutionPowers_DD}" layout="grid" columns="1" required="true"> 
      <f:selectItems value="#{resBRRD_83_2_3_Bean.resolutionPowers_DD}" var="data" itemValue="#{data}" itemLabel="#{data.tcdDesc}" /> 
      <o:converter converterId="omnifaces.ListConverter" list="#{resBRRD_83_2_3_Bean.resolutionPowers_DD}" /> 
     </p:selectManyCheckbox> 
     <p:inputText /> 
    </p:column> 

enter image description here

+0

あなたは、AjaxイベントとrendredのinputTextを試してみたのですか?!? –

+0

とあなたの隠されたinputTextそれはリスト要素の間にあります( '' 1。売却... 'と' '2。 –

+0

@ YagamiLightありがとうございました.Uiを使ってそれをやっていました:あなたの答えを待って – Jay

答えて

0

私は、UIを使用して、以下のようにそれを行うために管理:別々のフィールドで繰り返し

HTML

<ui:repeat var="gtField" value="#{resBRRD_83_2_3_Bean.resolutionPowers_DD}"> 
    <h:panelGroup id="resolutionPower"> 
     <p:selectBooleanCheckbox itemLabel="#{gtField.tcdDesc}" value="#{gtField.selected}"> 
      <p:ajax type="change" process="@this" update="@this resolutionPower" /> 
     </p:selectBooleanCheckbox> 
     <br /> 
     <p:inputText rendered="#{gtField.selected}" style="width:100%" /> 
     <p:spacer height="5px" rendered="#{gtField.selected}" /> 
     <br /> 
    </h:panelGroup> 
</ui:repeat> 

上記の修正後、

enter image description here

関連する問題