ユーザーがメッセージを投稿できる機能を(より大きなシステムの一部として)実装しようとしています。ユーザーが投稿ボタンをクリックすると、RichFacesとa4jを使用して、ajaxを使用して生成された投稿を取得しています。
応答が返されたらすぐに投稿が自動的に表示されないようにしたいと思います。むしろ、非表示のdiv内に出力パネルを追加したいと思います。ユーザーが投稿ボタンをクリックすると、その出力パネルにデータが入力されますが、ユーザーには明らかに表示されません。
後でやりたいのは、jQueryを使用して、新しい要素を非表示のdivから正しい位置に移動することです。
とにかく、ここでの問題は、a4j:repeatのajaxKeysプロパティを使用して、アクションが実行されたときに単一の行を更新していることです。たとえば、誰かが行に5の評価を付けた場合、(サーバー側で正しいキーを設定することにより)その行のみを再レンダリングしたいと思います。
この方法を使用すると、ajaxで作成された要素を他の投稿の横に移動することは最初は正常に機能しますが、ユーザーがその行に対してアクションを実行した場合、a4j:repeatが指定された要素で機能するとは思われませんそれ自体は生成しませんでした。
これは正しいです?もしそうなら、誰かが提案できる回避策はありますか?
Facebookも同様のことを実現できます。投稿を作成または削除したり、投稿にコメントしたりして、そのオブジェクトのみを更新することができます。私は、a4j:repeatがこの問題に取り組む最良の方法ではないかもしれないと考え始めています。考え?