簡體   English   中英

Play Framework:如何更改路由更改時的活動類

[英]Play Framework: How do I change active class on route change

我在我的項目中使用Play Framework 2 for Java和Bootstrap Helper,我想在側邊欄鏈接點擊上應用active類。 我使用側導航欄進行導航,默認情況下,一個鏈接在頁面加載時始終具有active類,這就是為什么每次只有一個鏈接被突出顯示為活動鏈接,但是如何在路由中更改class="active"或鏈接更改,有沒有辦法檢查路由路徑是我們的HTML scala模板文件。

這是我的側欄導航代碼。

<ul class="nav nav-list">
     <li class="active"><a href="/menu1">Menu1</a></li>
     <li><a href="/menu2">Menu2</a></li>
     <li><a href="/menu3">Menu3</a></li>
</ul>

這是我的routes文件

GET    /menu1          com.demo.project.controllers.DemoController.menu1()
GET    /menu2          com.demo.project.controllers.DemoController.menu2()
GET    /menu3          com.demo.project.controllers.DemoController.menu3()

請給我一些建議吧!

最后我得到了解決問題的方法,我也在為別人分享我的解決方案。 首先,我在html scala模板文件中創建了一個方法。

@activeLink(currentPath:String) = @{
if(request.path.equals(currentPath)) "active"
}

現在需要在anchor標記的class屬性中調用上面的方法。

<ul class="nav nav-list">
 <li class="@activeLink("/menu1")"><a href="/menu1">Menu1</a></li>
 <li class="@activeLink("/menu2")"><a href="/menu2">Menu2</a></li>
 <li class="@activeLink("/menu3")"><a href="/menu3">Menu3</a></li>
</ul>

這是我的最終解決方案,如果某個人有另一個解決方案或采用不同的方式,那么請分享這些解決方案。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM