CSS を使用してスタイルを設定する必要がある tr:table があります。テーブルの通常のスタイル機能はすべて機能していますが、行バンディングと行選択は機能していません。レンダリングされたソースを表示すると、取得する ID またはクラスの行に違いは見られません。また、公式ドキュメントには、いずれかのスタイル クラスを宣言するための属性がありません。これは可能ですか?もしそうなら、CSSを取得するために何をする必要がありますか?
<tr:table id="myTable" value="#{tableValues}" rowBandingInterval="1">
<tr:column>
##Stuff##
</tr:column>
<tr:column>
##Stuff##
</tr:column>
<tr:column>
##Stuff##
</tr:column>
</tr:table>
編集
何が起こっているのかを明らかにしてみましょう。
まず、上記の宣言を使用して jsf にテーブルを生成するように指示し、属性 rowBandingInterval によって各行に交互の色を与えるように指示します (2 に設定されている場合、2 行で 1 つの色、2 行で別の色、2 行で元の色を実行します)。など)
ページが標準の html にレンダリングされると、トリニダード (および jsf) は独自のクラスと ID を html に適用します。私の通常の手順は、レンダリングされた html を見て、それが適用されているクラスを見つけ、それに CSS ルールを追加することです。ただし、この場合、追加のスタイルは追加されません (レンダリングされた html には、ある行が別の行と異なることを示すものは何もありません)。
問題は、トリニダードに交互の行とユーザーが選択した行の異なるクラス/ID を CSS で取得するように指示するにはどうすればよいかということです。
編集 2
注意を払っている人を投稿し続けるために、実際のtd
要素にも変更はありません
編集 3
すべての属性を切り替えてから、すべてのコードを必要最低限の骨まで取り除いた後、行バンディング属性を見つけました。トリニダードのクラスはかなり複雑で、コードを再フォーマットしてすべてのノイズを取り除かない限り、それを見ることはできません。Trinidad は.af_column_cell-text-band
、バンド付きの行にクラスを追加しますが、通常の行には.af_column_cell-text
. これで問題の半分は解決しました。ユーザーが選択した行のセレクターを知る必要があります。そのため、答えを教えてくれる人なら誰でも喜んですべてのビー玉を渡します。