gpt4 book ai didi

java - 如何从 Controller 更改 JSP 中元素的类?

转载 作者:行者123 更新时间:2023-12-01 11:41:18 25 4
gpt4 key购买 nike

我试图根据我所在的页面设置列表元素的类(放置在头文件中)。头文件被导入到每个页面中。

该项目使用Spring框架。我是 Java Servlet 的新手,并且习惯于在 .NET 中以简单的方式执行此操作。我想知道在 Java/JSP 中最合适的方法是什么。

这是标题页(header.jsp):

<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<title>My Project</title>
</head>
<body>
<div id="mainHeaderDiv" class="header main">
<div class="header_resize">
<div class="clr"></div>
<div class="menu_nav">
<ul>
<li id="liHome"><a href="./Home.htm">Home</a></li>
<li id="liOrderInfo"><a href='./OrderInfo.htm'><span>Delivery Info</span></a></li>
<li id="liInvoice"><a href='./Invoice.htm'><span>Invoice Info</span></a></li>
<li id="liShipment"><a href='./Shipment.htm'><span>Sales Order Info</span></a></li>
<li id="liMaterial"><a href='./Material.htm'><span>Material Info</span></a></li>
<li id="liLogout"><a href="./logout.htm">Logout</a></li>
</ul>
</div>
<div class="clr"></div>
</div>
</div>
</body>
</html>

我将上述 header 导入到(home.jsp)的页面之一:

<%@include file="./header.jsp" %>
<div >
<div class="content">
<div class="content_resize">
<div class="clr"></div>
<div>
<div class="article">
<c:if test="${companyInfo != null}">
<h2>
<span>Company Profile</span>
</h2>
<b> <u>Company Information</u>
</b>
<table>
<tr>
<td></td>
</tr>
</table>
</c:if>
<div class="clr"></div>
</div>
</div>
</div>
</div>
</div>

Controller 方法:

@RequestMapping(value = "/Home", method = RequestMethod.GET)
public String home(@ModelAttribute("user") User user, Model model) {
logger.debug("BEGIN");
/*
.
.
.
*/
logger.debug("END");
return "Home";
}

(删除了脚本和导入,以便更轻松地阅读实际代码。)

那么当我在主页上时,如果可能的话,这是突出显示“主页”菜单选项的最佳方式?

最佳答案

所以我意识到我们可以直接在javascript代码中使用EL。

我传递了我想要从 Controller 中选择的 li 的 id:

    @RequestMapping(value = "/Home", method = RequestMethod.GET)
public String home(@ModelAttribute("user") User user, Model model) {
logger.debug("BEGIN");
/*
.
.
.
*/
logger.debug("END");
model.addAttribute("currPage", "liHome");
return "Home";
}

并在标题页的 JavaScript 函数中使用它,如下所示:

window.onload = function(){
var menuToActivate = '${currPage}';
document.getElementById(menuToActivate).className = 'active';
};

关于java - 如何从 Controller 更改 JSP 中元素的类?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29501001/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com