primefacesのinputTextを動的に追加/削除できますか?Primefacesコンポーネントを動的に追加/削除できますか?
<h:inputText rendered="#{object.visibile}" />
のinputTextが表示されているobject.visibile == true
場合:
primefacesのinputTextを動的に追加/削除できますか?Primefacesコンポーネントを動的に追加/削除できますか?
<h:inputText rendered="#{object.visibile}" />
のinputTextが表示されているobject.visibile == true
場合:
テキストボックスを追加/削除するには、次のスニペットを試してください。
<h:panelGrid columns="1" cellpadding="10">
<h:commandButton value="+" action="#{contactBean.addPhone}"
image="../images/addbtn.png" />
<p:dataTable border="0" value="#{contactBean.phoneNos}" var="p"
rowIndexVar="rowIndex" emptyMessage="No phone numbers entered">
<p:column>
<h:selectOneMenu id="extraTask1" value="#{p.phoneType}">
<f:selectItem itemLabel="Select" itemValue="" />
<f:selectItem itemLabel="Mobile" itemValue="Mobile" />
<f:selectItem itemLabel="Work" itemValue="Work" />
<f:selectItem itemLabel="Others" itemValue="Others" />
</h:selectOneMenu>
</p:column>
<p:column>
<p:inputText value="#{p.phoneNo}" />
</p:column>
<p:column>
<h:commandButton value="remove" image="../images/button_remove.gif"
actionListener="#{contactBean.removePhone}">
<f:param name="columnToRemove" value="#{rowIndex}" />
</h:commandButton>
</p:column>
</p:dataTable>
</h:panelGrid>
私は 'p:dataGrid'を使って同様の問題を解決していますが、内部のコンポーネントのIDは同じです。同じ問題がありましたか? 'p:dataTable'を使う理由は何ですか?事前に感謝 – nikagra
私はその問題はありませんでした。現在、すべての値がリストに投稿されます。私は 'p:dataGrid'を試していません。 – NaaN
dataTableを使用すると、すべてのデータがリストによって処理されます。また、primeFacesのdataTableコンポーネントを更新する方が簡単であるため、動的コンポーネントの可能性があります。 – bilelovitch
これは簡単なモードです。
私はミッシェルの答えを受け入れることに驚きました。私は全く異なる機能要件を念頭に置いていました。ミッシェルのソリューションでは、一定の量の準備入力が必要になりますが、ユーザーは不確定な量を動的に追加/削除することができます。 – BalusC
あなたと同意します。私はこれを初めて知ったので、うまくいくと思いました。しかし、あなたが言ったように、一定量の準備入力がある場合にのみ機能します。しかし、私はいくつかの回避策を講じ、レンダリングを使わずに作業を準備しました。 – NaaN
それからあなたはそれを詳細として回答として再投稿し、自分自身を受け入れるべきです。 – BalusC