2012-08-27 57 views
9

Quiero personalizar PrimeFace tabla de datos paginación.Cómo personalizar el paginador de la tabla de datos PrimeFaces

Actualmente está mostrando el recuento de páginas en la parte inferior como: (1 of 5). Quiero mostrar el n. ° de registros en una página del total de registros, como por ejemplo: (1-10 of 50).

He incluido mi código a continuación, pero no está funcionando. ¿Podría alguien ayudarme?

<p:dataTable id="tblStatusSearch" var="item" rowIndexVar="rowStatusSearch"  
    rows="10" paginator="true" 
    paginatorTemplate="{CurrentPageReport} 
    {FirstPageLink} {PreviousPageLink} {PageLinks} {NextPageLink} {LastPageLink} " 
    value="#{StatusAction.listEBeans}" 

<f:facet name="footer"> 
    <h:outputText value="#{rowStatusSearch + 1} - 10 out of #{bondLocationStatusAction.itemCount}"/> 
</f:facet> 

Respuesta

0

"please refer to the attached image" Creo que se ha olvidado de adjuntar la imagen;)

Si desea mostrar el tamaño de página en sus p:datatable debe declarar dos campos en el bean y mantenga las pageSize y first argumentos valores del formulario load método dentro de ellos, entonces puede mostrar el tamaño de página con el siguiente paginatorTemplate:

paginatorTemplate=" {CurrentPageReport} #{yourBean.first + yourBean.pageSize} and rest of you template "

recuerde que EL funciona en la propiedad paginatorTemplate.

23

Puede utilizar un PrimeFaces currentPageReportTemplate para la CurrentPageReport así:

<p:dataTable id="tblStatusSearch" var="item" paginator="true" rows="10" 
    currentPageReportTemplate="Showing {startRecord}-{endRecord} out of {totalRecords}" 
    paginatorTemplate="{CurrentPageReport} 
{FirstPageLink} {PreviousPageLink} {PageLinks} {NextPageLink} {LastPageLink} " 
    value="#{StatusAction.listEBeans}"> 

confirmo que funciona en PrimeFaces 3.4.2. Está presente en la guía del usuario de PrimeFaces 3.0, por lo que si está utilizando PrimeFaces 3.x debería funcionar para usted.

+0

Está funcionando pero: después del filtrado tengo: "Mostrando 1-23 de indefinido". ¿Cómo podemos administrar esta función con el filtrado? (¿Resolver el error indefinido?) –

+1

No tengo su problema cuando se utiliza el filtrado. Encontré un problema PrimeFaces similar al suyo: https://code.google.com/p/primefaces/issues/detail?id=5621. Tu problema es diferente al que pides por OP y debería tratarse en otra pregunta. Puede buscar si su problema tiene una respuesta en SO. Si no, debe hacer una nueva pregunta con todos los detalles. – Seitaridis

+0

Extraño, porque es el mismo código, y claramente no es un problema de la versión PF. –

2

Esto resolverá su propósito, creo.

<p:dataTable id="datatable" var="car" value="#{myBean.cars}" paginator="true" rows="10" 
paginatorTemplate="{RowsPerPageDropdown} {FirstPageLink} {PreviousPageLink} {PageLinks} {NextPageLink} {LastPageLink} {CurrentPageReport}" 
currentPageReportTemplate="{startRecord} - {endRecord} of {totalRecords}"> 
<p:column...../> 
<p:column...../> 
</p:datatable>  

En lugar de {CurrentPageReport}, usted podrá ver lo que está buscando.

Cuestiones relacionadas