4
我有一個菜單,這是我的大部分網站的共同點。例如,如果我在第1頁上,我希望菜單中的「頁面1」鏈接突出顯示,以便將當前操作與「page1.action」進行比較,並根據比較結果動態添加相應的CSS類。如何確定我在JSP中呈現的Struts動作?
我已經試過各種其他堆棧溢出回答以下,但他們都不給我我想要的東西:
req.contextPath: ${req.contextPath }<br/>
req.requestURL: ${req.requestURL }<br/>
pageContext.request.requestURL: ${pageContext.request.requestURL }<br/>
pageContext.request.requestURI: ${pageContext.request.requestURI }<br/>
pageContext.request.servletPath: ${pageContext.request.servletPath }<br/>
action name: ${com.opensymphony.xwork2.ActionContext.name }<br/>
action name 2: ${#context['struts.actionMapping'].name}<br/>
下面是輸出:
req.contextPath: /myContextRoot
req.requestURL: http://localhost:9080/myContextRoot/WEB-INF/app/layout/simpleLayout.jsp
pageContext.request.requestURL: http://localhost:9080/myContextRoot/WEB-INF/app/layout/simpleLayout.jsp
pageContext.request.requestURI: /myContextRoot/WEB-INF/app/layout/simpleLayout.jsp
pageContext.request.servletPath: /WEB-INF/app/layout/simpleLayout.jsp
action name:
action name 2:
我基本上想要的東西在那裏我可以這樣做:
<c:choose>
<c:when test="${pageContext.request.requestURI == 'page1.action')}">
<c:set var="page1ButtonClass" value="class=\"active\""/>
</c:when>
</c:choose>
對於它的價值,我們使用的是Struts 2.3.8。
羅馬C,它是空白。我們使用的是Struts 2.3.8。有沒有可能該版本在上下文中沒有該屬性? –
它在上下文和映射中具有該屬性,但如果沒有OGNL,則無法獲取該屬性,或者應將其推入/將其置於值棧中。 –
羅馬C,我不包括struts標籤庫。一旦我補充說,這工作。謝謝! –