10

我正在为我的一个练习项目实现一个树标记,我将在其中以树的形式(递归)显示目录的内容。在 JSP2.0 之前的日子里,我已经实现了与 Java 中的自定义标记类似的要求。处理目录需要递归(处理子目录)!是否可以将其编码为标记文件并且可以以递归方式使用它们?

4

1 回答 1

12

这是一个递归标记文件的示例,它从一个节点递归地显示它的所有子节点(用于生成YUI 树视图):

/WEB-INF/tags/nodeTree.tag

<%@tag description="display the whole nodeTree" pageEncoding="UTF-8"%>
<%@attribute name="node" type="com.myapp.Node" required="true" %>
<%@taglib prefix="template" tagdir="/WEB-INF/tags" %>
<li>${node.name}
<c:if test="${fn:length(node.childs) > 0}">
    <ul>
    <c:forEach var="child" items="${node.childs}">
        <template:nodeTree node="${child}"/>
    </c:forEach>
    </ul>
</c:if>
</li>

这可以在常规 JSP 文件中使用,如下所示:

<div id="treeDiv1">
    <ul>
        <c:forEach var="child" items="${actionBean.rootNode.childs}">
            <template:nodeTree node="${child}"/>
        </c:forEach>
    </ul>
</div>
于 2010-07-01T22:07:38.710 回答