selectCheckboxMenu ですべてのアイテムの選択を解除したときに、エンド ユーザーに対してコマンド ボタンを非表示にする方法があるかどうかを知りたいと思いました。
すべてのコメントと提案に感謝します。
selectCheckboxMenu ですべてのアイテムの選択を解除したときに、エンド ユーザーに対してコマンド ボタンを非表示にする方法があるかどうかを知りたいと思いました。
すべてのコメントと提案に感謝します。
rendered
選択チェックボックスメニューの属性の背後にあるまったく同じプロパティvalue
が空のコレクションを表していないかどうかをコマンドボタンの属性でチェックさせてください。<p:ajax>
選択チェックボックスメニューの変更を使用して、ボタンの永続的な親コンポーネントを更新することにより、このチェックを再実行できます。
つまり、一言で言えば:
<p:selectCheckboxMenu value="#{bean.selectedItems}">
<f:selectItems value="#{bean.availableItems}" />
<p:ajax update="button" />
</p:selectCheckboxMenu>
<h:panelGroup id="button">
<p:commandButton value="Submit" rendered="#{not empty bean.selectedItems}" />
</h:panelGroup>
値の変更や属性に特化した追加の Bean プロパティやリスナーメソッドなどの不要なコードや、回答者が明らかに JSF 1.x を念頭に置いている他の回答で言及されているrendered
ような醜いハックは必要ありません。valueChangeListener