<html>
<body bgcolor=cyan><center>
<%LinkedList ln=(LinkedList)session.getAttribute("listname"); %>
<%LinkedList lu=(LinkedList)session.getAttribute("listurl"); %><%-- <a href='<%=lu.get(0)%>'><%=ln.get(0)%><br>--%>
<%-- <a href='<%=lu.get(1)%>'><%=ln.get(1)%><br>--%>
<%-- <a href='<%=lu.get(2)%>'><%=ln.get(2)%><br>--%></body></html>上面这段代码中。有ln和lu两个容器。我知道ln和lu的size()大小是3,所以上面这么写ok可以去除存在里面的所有的菜单的名字和url地址。现在的问题是:如果我不知道lu和ln的长度,我就要通过迭代显示出lu和ln容器中所有的数据,请问如何写代码。貌似一种是通过使用jsp标签实现,一种是通过jsp内置java代码实现。请给出两种方法的完整可编译代码。谢谢。

解决方案 »

  1.   

    <%for (int i = 0 ;i<ln.size() ;i++ ){ %>
    <a href='<%=lu.get(i)%>'><%=ln.get(i)%>  <%}%>=========================
     <c:forEach items="${listurl}" var="ln">
    <a href='${ln.url}'>${ln.name}</a>
    </c:forEach>
      

  2.   

    <%
       for (int i=0;i<ln.size();i++){
        %>
        <a href='<%=lu.get(i)%>'><%=ln.get(i)%><br>
        <%
      }
    %>脚本段
      

  3.   


    使用标签<c:if test='${lu != null}'>
        <c:forEach var="l" items="${lu}">
            <a href='${l}'>${l}</a><br>
        </c:forEach>
    </c:if>
      

  4.   

    document.getElementById("id")然后循环处理
      

  5.   


    是不是你直接考的他的代码?
    你要存储到这个listurl对象中,才能遍历。
      

  6.   

    方案2 不可以 方案1 也有风险 
    因为都是迭代一个List 方案1 要求两个List 都是相同长度  
    方案2 jsp标签貌似不能直接取到<% %>中的值