2013-03-13 2 views
0

3 개의 체크 박스가있어서 3 개의 ID가 있습니다. 적어도 사용자가 체크 한 체크 박스가 하나 이상 필요합니다. 첫 번째 ID에 대해서만 오류 메시지를 정의 했으므로 사용자가 3 개의 확인란을 모두 선택하지 않으면 오류 메시지가 표시되고 첫 번째 확인란은 노란색으로 표시됩니다.필수 체크 박스 JSF

이제 아무 것도 선택하지 않으면 3 개의 확인란을 모두 노란색으로 표시하고 싶습니다. 이는 각 ID에 대해 3 개의 오류 메시지로 가능합니다. 그러나 원치 않는 부작용은 사용자가 3 개의 오류 메시지를 보는 것입니다. 하나의 오류 메시지와 3 개의 노란색 체크 박스 만 있으면됩니다. 이것이 JSF에서 가능한가?

답변

3

이것은 기본적으로이 개 솔루션이 있습니다

  1. 어느 하나의 <h:selectManyCheckbox> 대신 <h:selectBooleanCheckbox>의 ES를 사용합니다, 당신은 단순히 required="true"을 설정할 수 있습니다 거기에 너무 :

    <h:selectManyCheckbox ... required="true"> 
        ... 
    </h:selectManyCheckbox> 
    
  2. 또는<o:validateOneOrMore> : OmniFaces :

    <h:selectBooleanCheckbox id="one" ... /> 
    <h:selectBooleanCheckbox id="two" ... /> 
    <h:selectBooleanCheckbox id="three" ... /> 
    <o:validateOneOrMore components="one two three" />