在jsp

时间:2016-05-27 11:54:40

标签: java spring jsp servlets

我需要一些帮助

我有header.jsp,login.jps和register.jsp。

我使用Header.jsp和另一个JPS构建我的Body。 我想改变我的帮助' Header.jsp的链接取决于Jsp i build。我怎么能这样做?

我寻找的是javascript解决方案,但它是一个“肮脏的”#39;解决方案和声纳说'上帝不要这样做'。

更多细节解释mysefl,我的Header.jsp有代码:

<ul class="pull-right">
            <c:if test="${empty sessionScope.USER}">
                <li><a href="#" class="help"><spring:message code="header.manual"/><span><spring:message code="header.help"/></span></a></li>
            </c:if>

如果我使用Login.jsp构建,我希望该href链接到&#34; url.com/home.public?help_login&#34;如果是Register.jsp我希望href喜欢&#34; url.com/home.public?help_register&#34;。

信息:当我使用register.jsp时,我的网址是&#34; url.com/register.public"否则我使用login.jsp我的网址是&#34; url.com/login.public"。

对不起,如果我的英语不好,但我想你会明白的。

编辑:Layout.jsp

<body class="home" onload="nobackbutton();">  
    <c:choose>     
        <c:when  test="${not empty sessionScope.ADMIN}">
            <tiles:insertAttribute name="headerAdmin" />
            <tiles:insertAttribute name="menuAdmin" />
        </c:when >
        <c:otherwise>
            <tiles:insertAttribute name="header" />
            <tiles:insertAttribute name="menu" />   
        </c:otherwise>
    </c:choose>        
    <div class="container-fluid">
          <tiles:insertAttribute name="miga" />
          <tiles:insertAttribute name="body" />
    </div>
</body> 

2 个答案:

答案 0 :(得分:0)

最后,我使用document.ready(javascript)来识别de href并对其进行修改并使声纳忽略,因为我发现没有比这更好的了。我不想失去更多的时间......

Thnk Hooch寻求帮助

答案 1 :(得分:-1)

你不能简单地做以下事情吗?

    <%
        if (${sessionScope.USER} != null) {
    %>
            <li><a href="#" class="help"><spring:message code="header.manual"/><span><spring:message code="header.help"/></span></a></li>
    <%
        }else{
    %>
            <li><a href="#" class="help"><spring:message code="header.manual"/><span><spring:message code="header.help"/></span></a></li>
    <%
        }
    %>

编辑:因为您需要知道当前页面,您可以检查

<%= request.getServletPath() %>

在header.jsp