2013-05-07 4 views

Répondre

1

Par exemple:

<h:form id="form"> 
    <p:dataTable id="cars" rowIndexVar="idx" ...> 
    <p:column selectionMode="multiple" style="width:2%" /> 
    </p:dataTable> 
</h:form> 

Primefaces ajouter le suffixe par défaut _head à en-tête de datatable, dans l'exemple: en-tête de datatable aura id cars_head, vous pouvez désactiver select all checkbox via css .ui-chkbox-box.ui-widget.ui-corner-all.ui-state-default est le style de case à cocher de toutes case à datatable .

Si vous utilisez JSF 2.0:

<style type="text/css"> 
     #form-cars_head .ui-chkbox-box.ui-widget.ui-corner-all.ui-state-default{ 
      display:none !important; 
     } 
    </style> 

vous devez ajouter cette configuration web.xml à utiliser '-' dans l'id du composant:

<context-param> 
     <param-name>javax.faces.SEPARATOR_CHAR</param-name> 
     <param-value>-</param-value> 
    </context-param> 
+0

j'ai pu y parvenir en remplaçant .ui-chkbox-all {display: none importante;} mais est appliquée à tous les toutes les tables. Est-il possible de l'appliquer à une table en particulier? – KCP

+0

non, il s'applique uniquement pour datatable avoir id 'cars'! –

0

Ce que vous pouvez faire est ci-dessous:

Ajoutez le fichier ci-dessous dans votre fichier default.css:

.table-no-select-all .ui-chkbox-all { 
    display: none !important; 
} 

Et puis dans votre Facelet, reportez-vous que, comme ci-dessous:

<h:form id="form"> 
    <p:dataTable id="cars" rowIndexVar="idx" styleClass="table-no-select-all" ...> 
    <p:column selectionMode="multiple" style="width:2%" /> 
    </p:dataTable> 
</h:form> 

Merci.

2

J'ai réussi à faire cela en utilisant p: columnGroup pour spécifier les en-têtes.

<p:dataTable id="selectByPotentialTable" var="replacementByPotential" 
    widgetVar="selectByPotentialTable" 
    value="#{kmSelectByPotentialBean.allReplacementPrintersViewModel}" 
    selection="#{kmSelectByPotentialBean.selectedByPotentialReplacement}"> 

     <p:columnGroup type="header"> 
      <p:row> 
       <p:column/> 
       <p:column headerText="Printer Model"/> 
      </p:row> 
     </p:columnGroup> 
     <p:column selectionMode="multiple" style="width:2%;text-align:center"/> 
     <p:column> 
      #{replacementByPotential.name} 
     </p:column> 

</p:dataTable> 

Si vous changez d'avis et que vous voulez que la case à cocher selectAll à afficher, vous devez changer

<p:columnGroup type="header"> 
     <p:row> 
     <p:column/> 
      <p:column headerText="Printer Model"/> 
     </p:row> 
</p:columnGroup> 

à

<p:columnGroup type="header"> 
     <p:row> 
      <p:column selectionMode="multiple" style="width:2%;text-align:center"/> 
      <p:column headerText="Printer Model"/> 
     </p:row> 
</p:columnGroup> 
7

Cela fonctionne très bien:

.ui-chkbox.ui-chkbox-all.ui-widget { 
    display:none !important; 
} 
1

Cela fonctionne pour moi n Primefaces 6,0

.ui-widget-header div.ui-chkbox.ui-widget { 
     display: none !important; 
    } 
Questions connexes