【问题标题】:display category and sub category on home page menubar using jsp使用jsp在主页菜单栏上显示类别和子类别
【发布时间】:2012-05-31 08:39:28
【问题描述】:

我想在主页上将类别和子类别显示为菜单栏。所有类别都应该在那里,并且子类别会在鼠标悬停在类别菜单上时显示。

我已经尝试过 servlet 来获取记录和 jsp 来显示它。我的jsp代码如下

<ul>
    <% Iterator itr;%>
    <% List data=(List)request.getAttribute("data");
        for(itr=data.iterator(); itr.hasNext(); ){
    %>
    <li><a href=""><%=itr.next()%></a></li>
    <%}%>
</ul>

使用上述方法我可以正确获取类别,但问题是我想要存储在名为 tbl_subcategory 的另一个表中的子类别。使用上述方法,我可以得到如下输出:

首页 关于我们 运动厨房 婴儿玩具

现在我想在鼠标悬停时显示每个类别的子菜单。

但它只显示类别而不是子类别。

【问题讨论】:

    标签: java servlets


    【解决方案1】:

    我不知道“数据”中存储了什么,但假设它加载了字符串:

    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,但请记住,尽管此高级下拉菜单需要花钱

    我不知道您从哪里获得子菜单项,但我只能说,在使用这些教程时,您应该在 &lt;a&gt; 标记中输入子菜单值以创建子菜单项。像这样:

    <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>
    

    只要按照教程中的步骤操作就可以了

    【讨论】:

    • 谢谢,我希望您需要在鼠标悬停时添加子菜单
    • 当您将鼠标放在菜单项上时,您是否正在寻找带有下拉选择的菜单?喜欢this
    • 是的,这就是我想要的。我有两个表,第一个是类别,另一个是子类别。现在我可以显示菜单(即在类别表中)但希望在鼠标上进行下拉选择在菜单项...谢谢你
    • 我不能为此付费,没有免费工具,或者你能建议我为它编写代码吗..谢谢
    • 第一个教程是免费的。它显示了所有 javascript 以及您如何构建下拉菜单
    猜你喜欢
    • 2017-05-13
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-03-30
    • 1970-01-01
    • 2013-06-03
    • 1970-01-01
    • 2018-12-07
    相关资源
    最近更新 更多