Должно работать нормально.Это полностью клиентская часть (т. Е. Сгенерированный JSF код JavaScript находит его в дереве HTML DOM).
Возможно, вы указали неверный идентификатор клиента.Откройте страницу в веб-браузере, щелкните правой кнопкой мыши и Просмотреть источник , найдите сгенерированный элемент HTML в источнике страницы и определите его атрибут id
.Тот, который вы указываете в атрибуте render
, должен относиться к нему абсолютно (префикс с :
) или относительно (по сравнению с родительским компонентом UINamingContainer
).
Другая возможная причина заключается в том, что выпоместили атрибут rendered
в тот же дочерний компонент того же составного компонента, который оценил false
, что, в свою очередь, привело к тому, что сгенерированный элемент HTML полностью отсутствует в дереве HTML DOM.Затем вы хотите поместить атрибут rendered
в дочерний элемент этого компонента, например:
<h:panelGroup id="childComponent">
<h:outputText value="#{bean.text}" rendered="#{bean.rendered}" />
</h:panelGroup>