2013-02-11 3 views
0

JSF -2에서 모두 선택 확인란을 선택하면 페이지의 모든 선택 상자가 다른 페이지에 있지 않은 경우에만 선택할 수 있습니다.이 확인란은 목록이며 각 페이지에 20 개가 표시되기 때문에 ...JSF-2에서 selectAll 확인란을 만드는 방법

감사합니다, 알렉스

+0

답변으로 목표에 도달 했습니까? – skuntsel

답변

2

은 당신이 달성 하려는지에 따라 다릅니다.

public void checkAll(ActionEvent event){ 
    for(Check check : checkBoxes) { 
     checkBoxes.setChecked(true); 
    } 
} 

선택을 해제 모든 기능을 수행 할 수 있습니다

는 예를 들어, 다음과 같은 콩 방법과 부분 페이지 업데이트를 모두 확인하실 수 있습니다 그리고

<h:commandButton actionListener="{#myBean.checkAll}"> 
    <f:ajax render="checkboxes"> 
</h:commandButton> 
<h:panelGroup id="checkboxes"> 
    <ui:repeat var="check" value="#{myBean.checkBoxes}"> 
    <h:selectBooleanCheckbox value=#{check.checked}/> 
    <h:outputText value=#{check.checkedCaption}/> 
    </ui:repeat> 
</h:panelGroup> 

<f:form> 내에서 체크 박스를로드 할 수 있습니다 액션 청취자 메소드에서 true를 현재 체크 박스 상태의 반대로 바꾸면 다음과 같은 방식으로 달성됩니다.

편집. 예를 들어 저장 단추를 클릭하는 동안 나중에 확인 된 속성의 서버 측 설정을 수행하려는 경우 클라이언트에서 체크 버튼을 선택/선택 해제 할 수 있습니다. 따라서 jQuery 1.6 이상을 사용하는 경우 $('.checkbox').prop('checked', true);styleClass="checkbox"<h:selectBooleanCheckbox>으로 미리 설정하여 볼 수 있습니다. 이를 위해, 예를 들어 위에서 제안한 간단한 자바 스크립트로 버튼의 javascript onclick 메소드를 바인딩 할 수 있습니다.

관련 문제