アイテムがリッチフェイス (4.3.1.Final) に追加されたときに発生する ajax イベントはありpickList
ますか? アイテムが選択されているかどうかに応じて、ボタンを無効にする必要があります。
開発者ガイドにはこれについてはまったく言及されていませんが、グーグルでこれを見つけました。提案された解決策を使用して、次の ajax イベントを使用しました。
<rich:pickList
var="item"
value="#{someBean.selectedItems}">
<a4j:ajax event="sourceblur" render="somePanelGroupWithTheButton" />
<a4j:ajax event="targetblur" render="somePanelGroupWithTheButton" />
</rich:pickList>
これは機能します。ただし、ソース リストまたはターゲット リストがぼやけるたびにイベントが発生します。これは、私のニーズにはあまりにも頻繁です。
私も試し<a4j:ajax event="additems" />
てみ<a4j:ajax event="removeitems" />
ました。この場合、私が望むように、アイテムの削除または追加時にのみイベントが発生します。ただし、selectedItems
イベントが発生するまで、新しいアイテムは取り込まれません。これは、最初の項目を追加するとリストが空になり、2 番目の要素を追加するとサイズが 1 になるため、ボタンを再レンダリングするために使用できないことを意味します。
selectedItems
ターゲット リスト ( ) が更新された後に起動する ajax イベントはありますか? (そして、このコンポーネントでサポートされている ajax イベントの完全なリストがどこかにあるはずですよね? )
ここで提案されているように、変更イベントも試しましたが、発生しません。