尝试使用sitemesh和EL比较元标记的值

时间:2014-07-17 07:40:40

标签: jsp el sitemesh

我正在尝试将sitemesh返回的元标记的值与字符串进行比较,但是它没有显示正确的结果。下面是我正在尝试的代码。如果出现问题,请告诉我。

<c:set var="pageName" scope="request"  ><sitemesh:write property='meta.menu'/></c:set>
<c:if test="${pageName=='Doctorhome'}"> somthing </c:if>

如果阻止内容,则不打印。此外,我尝试打印$ {pageName},它打印 Doctorhome

请告诉我有什么问题。

3 个答案:

答案 0 :(得分:0)

尝试使用c:set标记的值属性

<c:set var="pageName" scope="request" value="${<sitemesh:write property='meta.menu'/>}" />
<c:if test="${pageName == 'Doctorhome'}"> somthing </c:if>

答案 1 :(得分:0)

“pageName”在请求范围内,因此请更改此行:

<c:if test="${pageName=='Doctorhome'}"> somthing </c:if>

<c:if test="${requestScope.pageName=='Doctorhome'}"> somthing </c:if>

当你将requestScope.pageName转储到屏幕上时,通过在它之前和之后添加和附加一个字符,检查它是否为空格:

<c:out value="=${requestScope.pageName}="/>

确保等号和DoctorHome文本之间没有空格。

答案 2 :(得分:0)

在做了很多R&amp; D后,我观察到sitmesh写标签在EL之后被处理。 所以我使用EL本身检查页面值。