2013-03-13 2 views
0

У меня есть 3 флажка, поэтому у меня есть 3 разных идентификатора. Мне нужен хотя бы один флажок, проверенный пользователем. Я определил сообщение об ошибке только для первого идентификатора, поэтому, если пользователь не будет отмечать все 3 флажка, он увидит мое сообщение об ошибке, а первый флажок будет отмечен желтым.обязательные флажки JSF

Теперь я хочу отметить все 3 флажки желтыми, если ни один не отмечен. Это возможно с тремя сообщениями об ошибках для каждого идентификатора. Но нежелательным побочным эффектом является то, что пользователи затем видят 3 сообщения об ошибках. Я хочу только одно сообщение об ошибке и 3 желтые флажки. Это возможно в JSF?

ответ

3

Это в основном 2 решения:

  1. Либо использовать единый <h:selectManyCheckbox> вместо <h:selectBooleanCheckbox> Э.С., так что вы можете просто установить 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" /> 
    
Смежные вопросы