【问题标题】:Is there a way to make JSP include action parameters optional有没有办法让 JSP 包含操作参数可选
【发布时间】:2021-01-03 13:17:58
【问题描述】:

我的很多页面都使用 函数,但是如果您将参数放入要包含的页面中,我会一直遇到一个大问题,它似乎是虽然你不能让它们成为可选的。因此,如果你已经有一堆jsp组件的用法,并且你想给它添加一个参数,你必须找到它包含的所有地方并添加新的参数。

如果包含语句中没有提到,有没有办法使这些参数不是必需的或默认为某个值?

这是一个例子:

<div class="container-fluid">
                    <div class="row">
                        <div class="col-sm-8 col-12 offset-sm-2 slider-text">
                            <div class="slider-text-inner text-center">
                                <h1><%=request.getParameter("h1")%></h1>
                                <h2><%=request.getParameter("h2")%></h2>
                            </div>
                        </div>
                    </div>
  </div>



  <jsp:include page="../../Components/smallHero.jsp">
         <jsp:param name="h1" value="Some Text Here"/>
        <jsp:param name="h2" value=""/>
    </jsp:include>

【问题讨论】:

    标签: java jsp web jspinclude


    【解决方案1】:

    听起来以下内容可以解决您的问题?我很难相信标题可能是可选的。

    request.getParameter("h1") == null ? 'default value' : request.getParameter("h1")
    

    也许你真正想要的是

    <c:if test="${not empty param.h1}">
        <h1><c:out value="${param.h1}"/></h1>
    </c:if>
    

    所有这一切的危险在于,如果您没有在标签中指定参数,它将从请求中获取它(如果存在)。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2015-09-12
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多