我不知道“数据”中存储了什么,但假设它加载了字符串:
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>
至于您的下拉菜单,请查看这个带有简单下拉菜单的教程,它是免费的。如果您正在寻找更高级的下拉菜单,请查看带有高级下拉菜单的本教程,但请记住,尽管此高级下拉菜单需要花钱
我不知道您从哪里获得子菜单项,但我只能说,<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>
只需按照教程中的步骤操作即可