2016-07-22 3 views
0
<p:dataTable 
      styleClass="wr_datatable" 
      id="study_tab" 
      paginatorPosition="bottom" 
      var="datas" 
      value="#{datasBean.listDatas}" 
      widgetVar="dataTable" 
      emptyMessage="No data found. Please change the search criteria above." 
      paginator="true" 
      selection="#{dataBean.selectedData}" 
      rowKey="#{datas.data_pk}" 
      selectionMode="single" 
      rowIndexVar="indexvar" 
      draggableColumns="true" 
      resizableColumns="true" 
      paginatorTemplate="{CurrentPageReport} 
      {FirstPageLink} 
      {PreviousPageLink} 
      {PageLinks} 
      {NextPageLink} 
      {LastPageLink} 
      {RowsPerPageDropdown}" 
      rows="10" 
      rowsPerPageTemplate="5,10,15,20" 

위와 같은 표 형식의 데이터 구조보기를 설정했습니다.PrimeFaces rowsperpagetemplate

나는 아래의 코드를 사용하여 현재 페이지를 얻을 수 있습니다 :?.

(PF('dataTable').paginator.getCurrentPage() 

난 그냥 내가 primefaces이 rowpagetemplate 또는 정확하게 내 자바 스크립트 ({RowsPerPageDropdown} 동적으로 행 얻을 수있는 방법 궁금

답변

0

은 내가 해결책을 찾은 것 같아요. 그것은 해킹처럼 보인다. 누군가가 다르게 접근했을 경우 알고 하시겠습니까?

function getSelectedPaginationValue() { 
return $('#primefacesSelectID').val(); 
    } 

    function selectme(x) { 

    if (PF('dataTable').paginator.getCurrentPage() >0){ 
    var row_number = x - getSelectedPaginationValue() * PF('dataTable').paginator.getCurrentPage(); 
    PF('dataTable').unselectAllRows(); 
    PF('dataTable').selectRow((row_number)); 

    } else { 
    var row_number = x; 
    PF('dataTable').unselectAllRows(); 
    PF('dataTable').selectRow((row_number)); 
    } 
    } 
2

당신이 할 수있는 현재 rowsPerPage 값과 일치해야하는 PF('widgetVar').getPaginator().getRows()을 사용하여 현재 행 수를 얻으십시오.