在一个复合组件中,我有一段代码
<composite:interface>
<composite:attribute name="bean" required="true"/>
<composite:attribute name="selectable" required="true"/>
</composite:interface>
<composite:implementation>
............
<h:panelGrid rendered="#{cc.attrs.selectable}">
<h:column styleClass="colonneCheckbox">
<center><h:selectBooleanCheckbox value="#{liste.selected}" /></center>
</h:column>
</h:panelGrid>
.............
</composite:implementation>
</html>
我这样称呼它:
<ccc:resultatRechercheClient bean="#{rechercheClient}" selectable="true"/>
然而,panegrid没有被渲染,是因为激活它的唯一方法是在bean内创建一个布尔变量,将其设置为true,然后将其作为参数传递吗?
像这样的东西:
<ccc:resultatRechercheClient bean="#{rechercheClient}" selectable="#{rechercheClient.render}"/>
感谢
<h:panelGrid>
根本不支持<h:column>
。请改用<h:panelGroup>
。
<h:panelGrid rendered="#{cc.attrs.selectable}">
<h:panelGroup styleClass="colonneCheckbox">
<center><h:selectBooleanCheckbox value="#{liste.selected}" /></center>
</h:panelGroup>
</h:panelGrid>
顺便说一句,HTML <center>
元素自1998年以来就被弃用了。使用CSS进行样式和定位,并确保您学习基于最新资源的HTML。