2016-01-15 3 views
1

Используя JSF 2.2, кажется, что кнопка h: не поддерживает атрибут «disabled», как это делает commandButton. Я попытался поместить отключенную логику в атрибут «результат», но это отключает кнопку И помещает ярлык на кнопку вместе с добавленным сообщением «:» плюс.Как отключить кнопку JSF h:?

Есть ли более очевидный способ отключить его?

+0

Укажите, пожалуйста, вашу версию jsf. – Kukeltje

+0

версия добавлен .. – wsaxton

ответ

1

Похоже, что я могу использовать атрибут сквозной для этого:

<ui:composition ... xmlns:a="http://xmlns.jcp.org/jsf/passthrough"> 

    <h:button a:disabled="#{empty bean.list}" ... /> 

Интересно, если есть лучший способ, хотя.

+0

подтверждено! (как проблема, так и решение). Любопытно, почему это не в компоненте по умолчанию. Имейте в виду, что теперь это чистое клиентское решение, и его можно легко подделать. – Kukeltje

0

Работающий Хак, который не зависит от JSF 2.2, как делает транзитной передачи:

<h:button value="Edit" outcome="#{(item.editable ? 'original_outcome' : '#')}" /> 

Даже дает кнопку хороший отключил внешний вид, по крайней мере, в моей установке.

Как и в примере с транзитом, я думаю, что это может быть тривиально переопределено на стороне клиента, так что это скорее функция удобства использования, чем функция безопасности в ее текущей форме.

Смежные вопросы