加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 编程开发 > Java > 正文

java – 基于上下文数据显示活动导航

发布时间:2020-12-15 00:26:25 所属栏目:Java 来源:网络整理
导读:我在Thymeleaf模板中有一个以下分离的片段. ul class="nav nav-tabs" li role="presentation"a href="/"Freight Invoices/a/li li role="presentation"a href="/processed"Processed Invoices/a/li li role="presentation"a href="/postingrules"Posting Rul
我在Thymeleaf模板中有一个以下分离的片段.
<ul class="nav nav-tabs">
        <li role="presentation"><a href="/">Freight Invoices</a></li>
        <li role="presentation"><a href="/processed">Processed Invoices</a></li>
        <li role="presentation"><a href="/postingrules">Posting Rules</a></li>
        <li role="presentation" class="active"><a href="/settings">Settings</a></li>
    </ul>

我想为活跃的导航元素添加一个“活动”类 – 但是在Thymyleaf中完成任务的建议似乎很困难,

解决方法

您可以添加一个ModelAttribute,其中每个页面的控制器中的值为活动值,例如:

SettingsController.java

@RequestMapping("/settings")
public String viewSettings(Model model) {
  // do stuff
  model.addAttribute("classActiveSettings","active");
  return "settings";
}

或者在一个SettingsControllerAdvice.java中

@ControllerAdvice(assignableTypes = SettingsController.class)
public class SettingsControllerAdvice {

    @ModelAttribute("classActiveSettings")
    public String cssActivePage() {
        return "active";
    }

}

然后,在您的settings.html中包含的导航片段中:

<ul class="nav nav-tabs">
     <!-- Other links -->
    <li role="presentation" th:class="${classActiveSettings}">
       <a th:href="@{/settings}">Settings</a>
    </li>
</ul>

最后,您可以为导航栏中的每个控制器和链接重复此过程.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读