Question

I ai un dataTable qui fonctionne comme désiré quand il est rendu via une demande / réponse cycle normal (non Ajax).

Je suis un style défini qui est d'appliquer une couleur de fond et le rembourrage à la première ligne de la table:

.myTable tr:first-child td {
  padding-top: 25px;
  background-color: yellow;
}

Comme je l'ai mentionné plus haut, la couleur de remplissage et l'arrière plan parfaitement lorsqu'il est chargé par la demande typique / réponse. Cependant, il y a quelques actions qui peuvent causer ce tableau à nouveau rendu via AJAX. Lorsque cela se produit, la table est correctement rechargée (ses données), mais le style ci-dessus ne sont pas réappliquée.

Comme il n'y a aucun moyen d'attribuer spécifiquement la première ligne une classe CSS lors de l'utilisation du composant dataTable. Donc, je le sélecteur CSS ci-dessus pour obtenir la première ligne. Quelqu'un at-il déjà eu affaire à un problème comme ça avant? Est ma seule option pour essayer d'utiliser jQuery dans le onComplete de TOUS ... qui peut être beaucoup d'endroits différents ... les actions qui peuvent déclencher la table pour être réaffichée?

Mon problème est que je suis en train d'éviter d'utiliser un composant de table richfaces à cause de la vitesse et je dois avoir la table soit déroulable. Donc, je suis en utilisant une solution CSS spécifique du navigateur pour srcoll le corps de table et de garder l'électricité statique en-têtes. La principale raccrochage est que je dois la première rangée de la table pour avoir une valeur de rembourrage supérieure qui pousse dessous l'emplacement fixe de l'en-tête de table.

Était-ce utile?

La solution

Puisque vous ne dataTable nouveau rendu, le style par défaut de la table s'applique.

Vous devez rerender le code de style trop avec le dataTable, qui pourrait résoudre votre problème.

Essayez quelque chose comme le code ci-dessous et rerender outputPanel au lieu de dataTable:

<a4j:outputPanel>
    <h:dataTable>
            //Data
    </h:dataTable>
    <style>
       .myTable tr:first-child td {
          padding-top: 25px;
          background-color: yellow;
        }
    </style>
</a4j:outputPanel>
Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top