我不知道“数据”中存储了什么,但假设它加载了字符串:
String data[] = new String[] { "Array 1", "Array 2", "Array 3" };
JSP 页面看起来像这样打印出“数据”中的所有字符串:
<ul>
<% Iterator<String> iterator = request.getAttribute("data");
while (iterator.hasNext()) {
%>
<li> <a href=""><%=iterator.next()%></a> </li>
<%}%>
</ul>
生成的 HTML 页面如下所示:
<ul>
<li><a href="">Array 1</a></li>
<li><a href="">Array 2</a></li>
<li><a href="">Array 3</a></li>
</ul>
或者您可以使用 JSTL 来遍历“数据”。在您的 HTML-Header 中添加此声明:
<%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c" %>
然后遍历“数据”:
<% String data[] = request.getAttribute("data"); %>
<ul>
<c:forEach var="d" items="${data}">
<li><a href=""><c:out value="${d}" /></a></li>
</c:forEach>
</ul>
至于您的下拉菜单,请查看免费的THIS TUTORIAL WITH A SIMPLE DROPDOWN MENU。如果您正在寻找更高级的下拉菜单,请查看THIS TUTORIAL WITH A ADVANCED DROPDOWN MENU,但请记住,尽管此高级下拉菜单需要花钱
我不知道您从哪里获得子菜单项,但我只能说,在使用这些教程时,您应该在 <a> 标记中输入子菜单值以创建子菜单项。像这样:
<li><a href="#"
onmouseover="mopen('m1')"
onmouseout="mclosetime()">Array 1</a>
<div id="m1"
onmouseover="mcancelclosetime()"
onmouseout="mclosetime()">
<a href="#">Array 1.1</a>
<a href="#">Array 1.2</a>
<a href="#">Array 1.3</a>
</div>
</li>
<li><a href="#"
onmouseover="mopen('m2')"
onmouseout="mclosetime()">Array 2</a>
<div id="m2"
onmouseover="mcancelclosetime()"
onmouseout="mclosetime()">
<a href="#">Array 2.1</a>
<a href="#">Array 2.2</a>
<a href="#">Array 2.3</a>
</div>
</li>
只要按照教程中的步骤操作就可以了