即使对于没有子节点的节点,我在richTree中获得默认加号(+)图标。单击加号后,加号图标就会消失。我需要那个加号图标来代替叶子节点,即没有孩子的节点。
<a4j:outputPanel id="productComponentTree">
<rich:tree id="pcTree" var="pcTreeNode" >
<rich:treeModelRecursiveAdaptor id="recTreeAdaptorID"
roots="#{productComponentBean.productComponentList}"
nodes="#{pcTreeNode.financialServicesAgreementComponent}">
<rich:treeNode id="treeNodeID" expanded="true" icon="#{item.toShow?item.icon:'null'}">
<h:selectBooleanCheckbox id="treeNodeCheckBox"
disabled="#{productComponentBean.disabledCheckBox}"
value="#{pcTreeNode.selectedFlag}"
onclick="checkUncheckNodes(this);">
</h:selectBooleanCheckbox>
<h:outputText value="#{pcTreeNode.name}"></h:outputText>
</rich:treeNode>
</rich:treeModelRecursiveAdaptor>
</rich:tree>
</a4j:outputPanel>
上面是树的代码。任何帮助将受到高度赞赏。
答案 0 :(得分:0)
解决方案非常简单。
只需将leaf
标记添加到treeModelRecursiveAdaptor。
<rich:treeModelRecursiveAdaptor id="recTreeAdaptorID"
roots="#{productComponentBean.productComponentList}"
nodes="#{pcTreeNode.financialServicesAgreementComponent}"
leaf="#{isLeaf(pcTreeNode)}">
使用:
public Boolean isLeaf(Node node){
return (node!=null && (node.children==null || node.children.size()==0));
}