2017-05-09 3 views
0

체크 박스를 클릭하면 테이블의 모든 페이지에서 레코드를 선택합니다. 당신이 관리 빈`의 선택 상태를 저장하는 경우 나에게primefaces 데이터 테이블 헤더 체크 박스 선택 행 전체 페이지

<p:dataTable var="projectMaterial" id="projectMaterial" paginator="true" paginatorAlwaysVisible="true" paginatorTemplate="{CurrentPageReport} {FirstPageLink} {PreviousPageLink} {PageLinks} {NextPageLink} {LastPageLink} {RowsPerPageDropdown}" rows="12" rowsPerPageTemplate="5,10,15" rowSelectMode="true" selection="#{pprMaterialAuthorizationBean.selectedMaterialList}" rowKey="#{projectMaterial.id}" value="#{pprMaterialAuthorizationBean.materialList}"> 
    <p:column headerText="#{lang.labelMaterial}" filterBy="#{lang[projectMaterial.materialLangPrm]}" sortBy="#{lang[projectMaterial.materialLangPrm]}" width="40%"> 
     <h:outputText value="#{lang[projectMaterial.materialLangPrm]}" /> 
    </p:column> 
    <p:ajax event="toggleSelect" listener="#{pprMaterialAuthorizationBean.onToggleSelect}" update=":form1 :msgs"/> 
    <p:column id="columnId" selectionMode="multiple" width="40%"/> 
</p:dataTable> 
+0

도와주세요 : 때

'다음은 상태를 저장합니다 앞뒤로 페이징. 원하지 않는다면, actionListener (ajax/non-ajax)에서 빈 ('pprMaterialAuthorizationBean.selectedMaterialList')의리스트를 지우십시오. –

답변

0
<p:dataTable var="projectMaterial" id="projectMaterial" 
             paginator="true" paginatorAlwaysVisible="true" paginatorTemplate="{CurrentPageReport} {FirstPageLink} {PreviousPageLink} {PageLinks} {NextPageLink} {LastPageLink} {RowsPerPageDropdown}" 
             rows="12" rowsPerPageTemplate="5,10,15" rowSelectMode="true" 
             selection="#{pprMaterialAuthorizationBean.selectedMaterialList}" rowKey="#{projectMaterial.id}" 
             value="#{pprMaterialAuthorizationBean.materialList}" > 

           <p:column headerText="#{lang.labelMaterial}" filterBy="#{lang[projectMaterial.materialLangPrm]}" sortBy="#{lang[projectMaterial.materialLangPrm]}" width="40%"> 
            <h:outputText value="#{lang[projectMaterial.materialLangPrm]}" /> 
           </p:column> 
           <p:ajax event="toggleSelect" listener="#{pprMaterialAuthorizationBean.selectAllFalas}" update=":form1:projectMaterial"/> 
           <p:column selectionMode="multiple" width="40%"/> 
</p:dataTable> 


public void selectAllFalas() { 
      if(selectAllFalas == false) { 
       selectedMaterialList = (List<HydPipeMaterial>) materialList; 
       selectAllFalas = true; 
      }else{ 
       selectedMaterialList = new ArrayList<>(); 
       selectAllFalas = false; 
      } 
     }