2012-03-27 4 views
4

Не мог бы кто-нибудь рассказать мне, как использовать отрицание в значении компонента, например, чтобы его включить и отключить?Использование отрицания в отключенном атрибуте h: selectBooleanCheckbox

Мне нужно отключить флажок, если значение свойства (somevalue) в bean-компоненте является ложным.

как в

<h:selectBooleanCheckbox id="smthing" disabled="#{!somevalue}"></h:selectBooleanCheckbox> 

Для боба собственности

boolean somevalue; 

должен быть diabled но он не работает. Может быть, я делаю что-то неправильно.

Также может кто-то прояснить, не присвоено ли значение логическому состоянию, что будет тогда.

ответ

10

Вы должны ссылаться на него через управляемый боб:

<h:selectBooleanCheckbox disabled="#{!bean.somevalue}" /> 

Другой способ, который, по моему скромному мнению, красивее, чтобы читать, конечно, если логическое свойство имеет самодокументирован имя (somevalue ISN» т), использует not ключевое слово:

<h:selectBooleanCheckbox disabled="#{not bean.somevalue}" /> 

Также CoU Если кто-то попросит пояснить, не назначено ли значение логическому состоянию, что будет тогда.

boolean примитивного и только по умолчанию, чтобы false, когда в качестве неинициализированного переменного экземпляра. Если вы использовали Boolean, он был бы дефолт до null.

+0

Как добавить атрибут данных html в 'h: selectBooleanCheckbox'? Это ''. Здесь 'data-checked' - атрибут, добавляемый в тег JSF. –

+0

Здравствуйте, у меня похожая структура, но disabled = "# {bookingBean.viewDisabled}" ссылается на public boolean isViewDisabled(). Как это возможно? – Furkan